Abe*_*emi 0 javascript firebase google-cloud-platform google-cloud-functions google-cloud-firestore
基本上我试图让 firebase 函数简单地在文档中输出值,我只在本地实现了这一点......但该函数不会部署到云。下面是函数
\n\nconst functions = require(\'firebase-functions\');\nconst firebase = require(\'firebase/app\');\nrequire(\'firebase/firestore\');\n\nconst firebaseConfig = {\n projectId: "covid-info-bw"\n};\n\nconst db = firebase\n.initializeApp(firebaseConfig)\n.firestore()\n\n// // Create and Deploy Your First Cloud Functions\n// // https://firebase.google.com/docs/functions/write-firebase-functions\n//\nexports.helloWorld = functions.https.onRequest((request, response) => {\n response.send("Hello from Firebase! Dawg I am beast");\n});\n\n\nexports.getData = functions.https.onRequest((req, res) => {\nconst docRef = db.collection(\'FunctionTest\').doc(\'Cm38kBYShNnyuLVpizcy\');\nconst getDoc = docRef.get()\n .then(doc => {\n if (!doc.exists) {\n console.log(\'No such document!\');\n return res.send(\'Not Found\')\n } \n console.log(doc.data());\n return res.send(doc.data());\n })\n .catch(err => {\n console.log(\'Error getting document\', err);\n});\nRun Code Online (Sandbox Code Playgroud)\n\n这是 package.json 中的一个片段
\n\n"dependencies": {\n "@firebase/app": "^0.6.1",\n "@firebase/firestore": "^1.14.0",\n "@google-cloud/firestore": "^3.7.4",\n "firebase-admin": "^8.10.0",\n "firebase-functions": "^3.6.0"\n},\nRun Code Online (Sandbox Code Playgroud)\n\n这是我运行“ firebase deploy --only functions:getData,functions:helloWorld”时遇到的错误
\n\n\xce\xbb firebase deploy --only functions:getData,functions:helloWorld\n\n=== Deploying to \'covid-info-bw\'...\n\ni deploying functions\nRunning command: npm --prefix "%RESOURCE_DIR%" run lint\n\n> functions@ lint M:\\VueAdventures\\covid-info-bw\\functions\n> eslint .\n\n+ functions: Finished running predeploy script.\ni functions: ensuring necessary APIs are enabled...\n+ functions: all necessary APIs are enabled\ni functions: preparing functions directory for uploading...\ni functions: packaged functions (41.45 KB) for uploading\n+ functions: functions folder uploaded successfully\ni functions: current functions in project: getData(us-central1), helloWorld(us-central1)\ni functions: uploading functions in project: helloWorld(us-central1), getData(us-central1)\ni functions: updating Node.js 8 function helloWorld(us-central1)...\ni functions: updating Node.js 8 function getData(us-central1)...\n! functions[getData(us-central1)]: Deployment error.\n Function failed on loading user code. Error message: Code in file index.js can\'t be loaded. \n Did you list all required modules in the package.json dependencies?\n Detailed stack trace: Error: Cannot find module \'firebase/app\'\n at Function.Module._resolveFilename (module.js:548:15)\n at Function.Module._load (module.js:475:25)\n at Module.require (module.js:597:17)\n at require (internal/module.js:11:18)\n at Object.<anonymous> (/srv/index.js:2:18)\n at Module._compile (module.js:653:30)\n at Object.Module._extensions..js (module.js:664:10)\n at Module.load (module.js:566:32)\n at tryModuleLoad (module.js:506:12)\n at Function.Module._load (module.js:498:3)\n ! functions[helloWorld(us-central1)]: Deployment error.\n Function failed on loading user code. Error message: Code in file index.js can\'t be loaded.\n Did you list all required modules in the package.json dependencies?\n Detailed stack trace: Error: Cannot find module \'firebase/app\'\n at Function.Module._resolveFilename (module.js:548:15)\n at Function.Module._load (module.js:475:25)\n at Module.require (module.js:597:17)\n at require (internal/module.js:11:18)\n at Object.<anonymous> (/srv/index.js:2:18)\n at Module._compile (module.js:653:30)\n at Object.Module._extensions..js (module.js:664:10)\n at Module.load (module.js:566:32)\n at tryModuleLoad (module.js:506:12)\n at Function.Module._load (module.js:498:3)\n\n\n Functions deploy had errors with the following functions:\n getData\n helloWorld\n\n\n To try redeploying those functions, run:\n firebase deploy --only functions:getData,functions:helloWorld\n\n\n To continue deploying other features (such as database), run:\n firebase deploy --except functions\n\nError: Functions did not deploy properly.\nRun Code Online (Sandbox Code Playgroud)\n
您不应该将 Firebase 客户端 SDK 用于后端代码。您想要做的事情只能使用 Google Cloud Firestore SDK (@google-cloud/firestore) 或 Firebase Admin SDK (firebase-admin,它只编写 Cloud SDK) 来实现。只需删除 Firebase 客户端 SDK(以 @firebase 开头)并仅使用您喜欢的后端 SDK。
| 归档时间: |
|
| 查看次数: |
1013 次 |
| 最近记录: |