我目前正在学习如何为Firebase使用新的CloudFunctions,而我遇到的问题是我无法访问通过AJAX请求编写的函数。我收到“没有’Access-Control-Allow-Origin’错误”。这是我编写的函数的示例:
exports.test = functions.https.onRequest((request, response) => { response.status(500).send({test: 'Testing functions'}); })
该函数位于以下网址中:https : //us-central1-fba- shipper-140ae.cloudfunctions.net/test
Firebase文档建议在函数内部添加CORS中间件,我已经尝试过了,但是对我不起作用:https : //firebase.google.com/docs/functions/http- events
这是我的方法:
var cors = require('cors'); exports.test = functions.https.onRequest((request, response) => { cors(request, response, () => { response.status(500).send({test: 'Testing functions'}); }) })
我究竟做错了什么?我将不胜感激。
Firebase团队提供了两个示例函数来演示CORS的使用:
第二个示例使用与您当前使用的cors不同的方式。
另外,考虑像这样导入,如示例所示:
const cors = require('cors')({origin: true});