Firebase Cloud Functions v2 Web调用遇CORS错误,Postman正常求解决
问题
我通过Web应用调用Firebase Cloud Functions v2的importScorm函数时遇到了CORS错误,但用Postman调用该函数完全正常。
函数声明如下:
exports.importScorm = functionsV2.https.onRequest({region: 'europe-west3', cpu: 4, memory: "4GiB", timeoutSeconds: 600 }, importScorm);
函数具体代码:
export default async ( request: functionsV2.https.Request, response: functions.Response ) => { const { appId, cloudStoragePath, activityId } = request.body; console.log( JSON.stringify({ severity: 'info', message: '0 - Funzione import SCORM invocata', request: request.body, }) ); // 1. 解压文件 const timeStart = Date.now(); const destinationFolder = await unzipFileInGCSFromURL(cloudStoragePath); console.log( JSON.stringify({ severity: 'info', message: '1 - 文件解压完成', timePassed: Date.now() - timeStart }) ); // 3. 提取文件 await importActivityFromXMLPath(destinationFolder, appId); response.send({ destinationFolder, }); return; };
解决方案
在Firebase Cloud Functions v2中,直接在函数的配置选项里添加cors: true即可解决CORS问题。
修改后的函数声明:
exports.importScorm = functionsV2.https.onRequest({cors:true, region: 'europe-west3', cpu: 4, memory: "4GiB", timeoutSeconds: 600 }, importScorm);
内容的提问来源于stack exchange,提问作者Alessandro Imbrescia
相关产品推荐
相关产品推荐

