首页 > 解决方案 > 当我在浏览器中运行 firebase 功能时,出现错误:无法获取 /testingtest

问题描述

我是firebase函数的新手,我需要帮助,当我运行该函数时出现错误:Cannot GET /testingtest,谁能告诉我为什么会出现这个错误,在这里我添加了我的完整代码

const express = require('express');
const app = express();
const cors = require('cors');
app.use(cors({ origin: true }));

app.get('/widgets/testingtest', (req, res) => {
  res.send({ 'status': 0});
});
exports.widgets = functions.https.onRequest(app);

标签: node.jsfirebasegoogle-cloud-functions

解决方案


对于那些最近来到这里的人来说,firebase emulators:start如果您使用firebase init创建您的 firebase 函数,这是默认的开始方式。

原因Cannot /GET /*可能是firebase导出api的方式。

创建api后,

app.get('/widgets/testingtest', (req, res) => {
  res.send({ 'status': 0});
});

当它作为exports.widgets = functions.https.onRequest(app); 实际 api 导出时widgets/widgets/testingtest,firebase 在widgets( export.widgets) 上导出 api。

你可以从这里删除额外widgets的:

app.get('/widgets/testingtest', (req, res) => {
  res.send({ 'status': 0});
});

然后变成:

app.get('/testingtest', (req, res) => {
  res.send({ 'status': 0});
});

这将在widgets/testingtest/.


推荐阅读