通过Firebase函数发出POST请求时出现404错误

问题描述 投票:0回答:1

配置 CORS 以允许来自任何来源的请求来解决之前的 CORS 问题后,我不再收到 CORS 错误,但现在发出 POST 请求时会出现 404 错误。我已经检查了多次该网址,似乎没有错误。我应该采取什么步骤来解决这个问题?

当我在本地主机上测试它时,它工作正常,但是部署到虚拟主机后,发送请求时出现错误。


            try {
                const response = await fetch('https://us-central1-nulligpt.cloudfunctions.net/api/hello', {
                    method: 'GET',
                });

                if (!response.ok) {
                    throw new Error('Network response was not ok.');
                }

                const text = await response.text();
                document.getElementById('response').innerText = text;
            } catch (error) {
                console.log('Request failed', error);
            }
const functions = require('firebase-functions');
const express = require('express');
const cors = require('cors');

const app = express();


app.use(cors({
  origin: ['https://nulligpt.web.app', 'http://127.0.0.1:5500'],
}));


app.get('/hello', (req, res) => {
  res.status(200).send('Hello World');
});

exports.api = functions.https.onRequest(app);

node.js express post google-cloud-functions http-status-code-404
1个回答
0
投票

您的路由仅使用

app.get
:

处理 GET 请求
app.get('/hello', (req, res) => {
  res.status(200).send('Hello World');
});

如果您还想处理 POST,则需要一个显式处理该问题的路由,可能使用 app.post()。 或者,如果您想在单个路由中处理所有 HTTP 动词,也许您想使用 app.all().

© www.soinside.com 2019 - 2024. All rights reserved.