首页 >web前端 >js教程 >如何为 Firebase Cloud Functions 配置 CORS?

如何为 Firebase Cloud Functions 配置 CORS?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-01 14:42:14828浏览

How to Configure CORS for Firebase Cloud Functions?

Cloud Functions for Firebase 中的 CORS 配置

通过 AJAX 请求访问 Cloud Functions for Firebase 时,您可能会遇到“No 'Access- Control-Allow-Origin'”错误,表明 CORS 配置不正确。

对于Cloud Functions v2:

Firebase-functions/v2/https 允许您直接在函数定义中启用 CORS:

const { onRequest } = require("firebase-functions/v2/https");

exports.sayHello = onRequest({ cors: true }, (req, res) => {
  res.status(200).send("Hello world!");
});

对于 Cloud Functions v1:

Firebase 提供的两个示例演示了如何使用CORS:

  • 具有日期格式的时间服务器
  • 需要身份验证的 HTTPS 端点

第二个示例采用了与您所使用的不同的方法:

const cors = require("cors")({ origin: true });

exports.fn = functions.https.onRequest((req, res) => {
  cors(req, res, () => {
    // Your function body here
  });
});

解决 CORS 的步骤问题:

  • 如果使用 Firebase Cloud Functions v1,请确保您已导入示例代码中所示的 cors 模块。
  • 使用 cors(req, res, ( ) => {}) 处理 CORS 预检请求。
  • 在 cors() 配置中设置 origin: true 以允许请求来自任何来源。
  • 如果返回 500 或 403 等响应代码,请尝试将响应状态设置为 200。
  • 验证您是否正在访问云函数的正确 URL。

以上是如何为 Firebase Cloud Functions 配置 CORS?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn