要避免Firebase可调用函数的CORS预检请求,可以使用Firebase Cloud Functions中的cors
库。该库允许您在函数中设置相应的CORS标头,以避免预检请求。
以下是一个示例解决方法的代码示例:
安装cors库:
npm install cors
在函数代码中引入cors库:
const functions = require('firebase-functions');
const cors = require('cors')({ origin: true });
在函数定义中使用cors中间件:
exports.myFunction = functions.https.onRequest((req, res) => {
cors(req, res, () => {
// 在这里编写您的函数逻辑
res.status(200).send('Hello, World!');
});
});
通过将函数请求包装在cors中间件中,这将自动设置适当的CORS标头,以允许来自任何来源的请求。
请注意,上述代码示例基于Firebase Cloud Functions的HTTP触发器。如果您在使用其他触发器(例如Firestore触发器)时遇到CORS问题,您可以使用Firebase Admin SDK中的cors
库来处理CORS预检请求。