【问题标题】:Cloud function post cors issue云功能post cors问题
【发布时间】:2021-04-13 08:15:54
【问题描述】:

发送请求时出现 cors 错误,但在邮递员中工作

错误信息:

从源(我的网络应用程序)获取(云函数 url)的访问权限已 被 CORS 策略阻止:没有“Access-Control-Allow-Origin”标头 存在于请求的资源上。如果一个不透明的响应服务 根据您的需要,将请求的模式设置为“no-cors”以获取资源 禁用 CORS。

云功能代码:

exports.add_edit_location_routes = functions.https.onRequest((request, response) => {
    let obj = request.body
    deletePreviousRoutes(obj.assign_route_id, obj.driver_id, () => addRoutes(obj, (msg) => {
        response.send(msg)
    }))
})

请求:

fetch("url", {
    body: JSON.stringify(json),
    method: "POST",
    headers: {'Content-Type': 'application/json'},
}).then(res => res.json()).then(obj => console.log(obj))

添加了这个,但还是不行

res.set('Access-Control-Allow-Origin', '*')

【问题讨论】:

    标签: javascript node.js google-cloud-functions


    【解决方案1】:

    尝试包含您在 Cloud Function 中提供的代码,而不是获取请求。

    exports.add_edit_location_routes = functions.https.onRequest((request, response) => {
      let obj = request.body
      response.set('Access-Control-Allow-Origin', '*')
      deletePreviousRoutes(obj.assign_route_id, obj.driver_id, () => addRoutes(obj, (msg) => {
          response.send(msg)
      }))
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-09
      • 1970-01-01
      • 2018-08-27
      • 2021-03-05
      • 2018-05-15
      • 2019-09-06
      • 2021-04-08
      相关资源
      最近更新 更多