javascript - 带有axios请求的firebase云功能CORS错误

标签 javascript node.js firebase google-cloud-functions cors

我有一个通用的云功能:

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

exports.helloWorld = functions.https.onRequest((request, response) => {
    cors(request, response, () => {
        res.status(200).send("Hello from Firebase!");
    });
});
我正在使用 axios 从客户端调用它:
  axios
    .get(
      "https://us-central1-dev-imcla.cloudfunctions.net/helloWorld",
    )
    .then((res) => {
      console.log(res);
    })
    .catch(er=>{
      console.log(er);
    })
我有两个问题:
  • 我收到 CORS 错误。

  • Access to XMLHttpRequest at 'https://myurl/helloWorld' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. xhr.js?b50d:178 GET https://us-central1-dev-imcla.cloudfunctions.net/helloWorld net::ERR_FAILED


  • 如果我从浏览器打开 cors 插件,或者如果我从 postman 那里调用函数,我会收到此错误:

  • Error: Forbidden Your client does not have permission to get URL /helloWorld from this server.

    Error: Request failed with status code 403 at createError (createError.js?2d83:16) at settle (settle.js?467f:17) at XMLHttpRequest.handleLoad (xhr.js?b50d:61)


    问题是我既是经过身份验证的用户,又在云代码中有 cors 包。

    最佳答案

    可能与 CORS 无关。检查 firebase 函数日志以查看代码中是否有任何错误。
    https://stackoverflow.com/a/51103084/5781575

    关于javascript - 带有axios请求的firebase云功能CORS错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62818364/

    相关文章:

    java - 如何创建点击文本的处理程序?

    java - if(usersData.getNumber().equals(number)){ NullPointerException

    javascript - 如何检查 DOM 中是否存在元素

    javascript - 是否有任何有意义的用例将一个函数对象的实例分配给另一个函数对象的原型(prototype)属性?

    javascript - 用户脚本如何获得有关页面上由 ajax 驱动的更改的通知?

    node.js - Heroku 上的 Postgresql 9.4.5 上的 Db-migrate 出现 SSL 错误

    javascript - 如何向变量的内容添加新内容,然后替换该变量?

    node.js 事件循环诊断

    node.js - setInterval 在一段时间内持续增加

    javascript - 在扩展 firebase 工厂以运行示例中的 getTotal() 函数时,我可以使用 $$updated 吗?