我已经用firebase实现了一个https函数,可以从firebase内的托管Web应用程序访问它,但是当我尝试从其他来源访问该函数时,出现cors错误,因此我搜索了解决方案并最终部署了我的函数与-
const express = require("express"),
functions = require("firebase-functions"),
app = express(),
cors = require("cors");
app.use(
cors({
origin: true,
})
);
它解决了问题,现在我可以从任何来源(甚至本地主机)访问该函数,所以我的问题是,我可以指定仅可以访问我的云函数的URL吗?有没有一种方法可以限制从允许的来源访问该功能?
答案 0 :(得分:1)
您需要添加特定的原点。
var corsOptions = {
origin: 'http://example.com'
}
app.use(
cors(corsOptions)
);
更多信息:https://expressjs.com/en/resources/middleware/cors.html#configuring-cors