当前位置: 首页 > 知识库问答 >
问题:

为Firebase启用云中CORS功能

祖浩淼
2023-03-14
exports.test = functions.https.onRequest((request, response) => {
  response.status(500).send({test: 'Testing functions'});
})

我是这样做的:

var cors = require('cors');    

exports.test = functions.https.onRequest((request, response) => {
   cors(request, response, () => {
     response.status(500).send({test: 'Testing functions'});
   })
})

我做错了什么?我将非常感谢任何帮助。

更新:

道格·史蒂文森的回答有所帮助。添加({origin:true})修复了此问题,我还不得不将response.status(500)更改为response.status(200),但我一开始完全没有看到。

共有1个答案

广乐邦
2023-03-14

Firebase团队提供了两个示例函数来演示CORS的使用:

  • 带有日期格式的时间服务器
  • 需要身份验证的HTTPSendpoint

第二个示例使用了与您当前使用的不同的cors处理方式。

const cors = require('cors')({origin: true});
exports.fn = functions.https.onRequest((req, res) => {
    cors(req, res, () => {
        // your function body here - use the provided req and res from cors
    })
});
 类似资料:
  • 我已经编写了一些云函数并部署了它们,现在我正试图使用Angular应用程序来访问这些API,但我得到了这个错误 CORS策略阻止了对“ 我知道我必须在我的云功能中启用cors,但我以前从来没有这样做过,所以如果你们能告诉我怎么做,那将是很棒的?我确实检查了这个线程,但是我有点困惑,我需要在哪里初始化cors,我是否也需要安装它的依赖关系,我需要在哪里在我的云功能中启用它?这是我的云功能

  • 问题内容: 我目前正在学习如何为Firebase使用新的CloudFunctions,而我遇到的问题是我无法访问通过AJAX请求编写的函数。我收到“没有’Access-Control-Allow-Origin’错误”。这是我编写的函数的示例: 该函数位于以下网址中:https : //us-central1-fba- shipper-140ae.cloudfunctions.net/test Fi

  • 问题内容: 我已经编写了一些云函数并进行了部署,现在我正尝试使用Angular应用程序访问这些API,但出现此错误 从源’ http:// localhost:4200 ‘ 在’xxxxxxxxxxxxxxxxxxxxxxxx’处对X​​MLHttpRequest的访问已被CORS策略阻止:对预检请求的响应未通过访问控制检查:没有’Access- Control-Allow-Origin’标头在请

  • 刚刚完成Hello World谷歌云功能教程,收到以下响应头:

  • 我有一个云函数,它在我的客户机上验证表单提交的输入。我正在使用云函数用于带有cors express中间件的Firebase https触发器。 Firebase功能 对函数的客户端调用 问题 是否可以防止firebase在预飞行请求上触发函数调用?如果没有,那么是否有一种方法可以阻止预飞行请求并成功地将数据传递给函数。

  • 我的设置如下所示: 将自定义TLD指向本地主机的自定义DNS服务器 我想要的是我的api和前端都在子域上。tld,其中/api反向代理到我的api和其他所有要转到vuejs开发服务器的内容。 我当前的nginx配置符合我的需要,但它阻止vue devserver连接: vue.config.js: 唯一的问题是,我仍然得到错误,我猜实时错误显示/实时刷新包括在vue-cli(法语对不起,但它基本上