相关疑难解决方法(0)

在Firebase的云功能中启用CORS

我目前正在学习如何为Firebase使用新的Cloud Functions,而我遇到的问题是我无法访问我通过AJAX请求编写的函数.我收到"No'Access-Control-Allow-Origin'"错误.这是我写的函数的一个例子:

exports.test = functions.https.onRequest((request, response) => {
  response.status(500).send({test: 'Testing functions'});
})
Run Code Online (Sandbox Code Playgroud)

该函数位于以下URL: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'});
   })
})
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?我很感激任何帮助.

更新:

道格史蒂文森的回答有所帮助.添加({产地:真})固定的问题,我也不得不改变response.status(500),以response.status(200)我在第一次完全错过.

javascript cors firebase google-cloud-functions

98
推荐指数
15
解决办法
6万
查看次数

在授权标头和CORS中使用访存

我正在尝试获得我似乎无法正常工作的在线游戏API的请求。我使用的是Fetch API,有些请求需要使用Authorization Bearer令牌,但是该请求永远不会与授权标头一起发送。

我试过了

mode: 'no-cors',
credentials: 'include'
Run Code Online (Sandbox Code Playgroud)

显然将Authorization放在标题中

header: { 'Authorization': 'Bearer TOKEN' }
Run Code Online (Sandbox Code Playgroud)

但该请求仍不符合授权。谁能指出我正确的方向?

编辑这是我提出要求的方式

fetch(URL, {
  credentials: 'include',
  header: {
    'Authorization': 'Bearer TOKEN'
  }
})
Run Code Online (Sandbox Code Playgroud)

javascript authorization cors fetch-api

6
推荐指数
2
解决办法
7439
查看次数