Firebase可调用函数给我CORS问题
我一直在尝试调用函数,以避免手动处理COR,但到目前为止一切都不起作用 我读过类似的文章 区别在于dude存在“无访问控制允许来源”问题。我的是对飞行前的反应。。。发行 我想请一位指导人员。真令人沮丧啊 我在执行“火焰计划” 到目前为止,我只尝试在本地运行函数。我根本没有部署该功能 这是我的功能代码Firebase可调用函数给我CORS问题,firebase,google-cloud-functions,firebase-hosting,Firebase,Google Cloud Functions,Firebase Hosting,我一直在尝试调用函数,以避免手动处理COR,但到目前为止一切都不起作用 我读过类似的文章 区别在于dude存在“无访问控制允许来源”问题。我的是对飞行前的反应。。。发行 我想请一位指导人员。真令人沮丧啊 我在执行“火焰计划” 到目前为止,我只尝试在本地运行函数。我根本没有部署该功能 这是我的功能代码 const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.in
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
exports.createOrder = functions.https.onCall((data, context) => {
return new Promise((resolve, reject) => {
resolve(data)
.then(result => {
return result;
})
.catch(err => {
console.error(err.code);
throw new functions.https.HttpsError('unknown', err.message);
});
});
});
这是我的客户代码
export const createOrder = order => {
functions
.httpsCallable('createOrder')({ data: order })
.then(result => {
console.log('result create order is', result);
return result;
});
};
函数package.json
{
"name": "functions",
"description": "Cloud Functions for Firebase",
"scripts": {
"serve": "firebase serve --only functions",
"shell": "firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
},
"dependencies": {
"@sendgrid/mail": "^6.4.0",
"axios": "^0.19.0",
"cors": "^2.8.5",
"firebase": "^6.3.1",
"firebase-admin": "^8.2.0",
"firebase-functions": "^3.1.0",
"firebase-functions-test": "^0.1.6"
},
"engines": {
"node": "8"
},
"private": true
}
firebase config.json
"firebase": {
"apiKey": "AIzaSy*****",
"authDomain": "jokii-test.firebaseapp.com",
"databaseURL": "https://jokii-test.firebaseio.com",
"projectId": "jokii-test",
"storageBucket": "jokii-test.appspot.com",
"messagingSenderId": "104544.....",
"appId": "1:10454485....."
}
Firebase SDK=Firebase:^6.3.1,客户端SDK不知道如何访问尚未部署的功能。请注意,在错误输出中,它试图访问的URL是完全部署的函数的URL。目前无法让它覆盖URL以访问您在本地主机上运行的URL
如果希望在本地调用可调用函数,则需要实现遵循以下命令的客户端。正如您所见,这将是一个相当大的工作量,因为客户端SDK正在为您管理大量的HTTP协议工作。如果您部署它,该功能是否工作?曾经有过类似的问题,现在我测试我部署的功能。如果有人知道一个解决方案,那就太好了,但目前这可能有助于您继续处理您的项目。@seb一旦我部署了该函数,它是否有效@我明白了。。我没有读那部分。谢谢你澄清这个问题,道格。你在youtube上的firebase视频帮了大忙: