首页 >web前端 >js教程 >如何在 Firebase Cloud Functions(v1 和 v2)中启用 CORS?

如何在 Firebase Cloud Functions(v1 和 v2)中启用 CORS?

DDD
DDD原创
2024-12-09 14:06:11582浏览

How to Enable CORS in Firebase Cloud Functions (v1 & v2)?

在 Firebase 的 Cloud Functions 中启用 CORS

尝试从 AJAX 请求调用 Cloud Function 时,开发人员经常遇到“无‘访问权限’” -Control-Allow-Origin'”错误。此问题源于跨源阻止,即禁止从创建函数之外的源访问函数。

为了解决此问题,Firebase 提供了在 Cloud Functions 版本 1 和 2 中启用 CORS 的选项.

Cloud Functions v2

对于 Cloud Functions v2,CORS 可以是直接在函数定义中启用。以下代码演示了如何实现此目的:

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

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

Cloud Functions v1

对于 Cloud Functions v1,Firebase 提供了演示 CORS 使用情况的示例函数。这些示例展示了使用 CORS 的替代方法。

一种方法涉及导入 CORS,如下所示:

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

使用此方法的函数的一般形式类似于:

exports.fn = functions.https.onRequest((req, res) => {
  cors(req, res, () => {
    // function body using req and res provided by cors
  });
});

通过采用这些方法,开发人员可以在 Cloud Functions 中无缝启用 CORS,从而允许从外部源访问其函数。

以上是如何在 Firebase Cloud Functions(v1 和 v2)中启用 CORS?的详细内容。更多信息请关注PHP中文网其他相关文章!

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