第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Firebase 函數(shù)部署失敗并需要外部代碼

Firebase 函數(shù)部署失敗并需要外部代碼

慕運(yùn)維8079593 2023-08-05 20:47:02
我正在嘗試重用現(xiàn)有的 Express 應(yīng)用程序,并將其基本上移植到 firebase 功能。我有一個這樣的項目結(jié)構(gòu):/  functions/    index.js    package.json  src/    app/      index.js  index.js/src/app/index.jsconst express = require('express')const cors = require('cors')const app = express()app.use(cors({  origin: 'http://localhost:5000',}))app.get('/health', (req, res) => {  res.status(200).send('Health OK')})module.exports = app/functions/index.jsconst functions = require('firebase-functions');const admin = require('firebase-admin')const app = require('../src/app')admin.initializeApp()exports.app = functions.https.onRequest(app)使用時整個設(shè)置運(yùn)行良好firebase emulators:start。我可以調(diào)用這些函數(shù),一切正常。但是,當(dāng)我收到以下錯誤消息時,我無法部署這些功能:函數(shù)加載用戶代碼失敗。錯誤消息:錯誤:請檢查您的函數(shù)日志以查看錯誤原因: https: //cloud.google.com/functions/docs/monitoring/logging#viewing_logs。其他故障排除文檔可以在https://cloud.google.com/functions/docs/troubleshooting#logging中找到函數(shù)部署有以下函數(shù)錯誤:app當(dāng)我在 Firebase 控制臺中查看日志時,我無法查明確切的問題:{"@type":"type.googleapis.com/google.cloud.audit.AuditLog","status":{"code":3,"message":"加載用戶代碼時函數(shù)失敗。錯誤消息:錯誤:請檢查您的函數(shù)日志以查看錯誤原因: https: //cloud.google.com/functions/docs/monitoring/logging#viewing_logs??梢栽趆ttps://cloud.google.com/functions/找到其他故障排除文檔docs/troubleshooting#logging"},"authenticationInfo":{"principalEmail":"xxx@gmail.com"},"serviceName":"cloudfunctions.googleapis.com","methodName":"google.cloud.functions.v1 .CloudFunctionsService.UpdateFunction","resourceName":"projects/xxxx/locations/us-central1/functions/app"}但是,當(dāng)我從文件中刪除這一行時/functions/index.js:const app = require('../src/app')基本上把代碼放進(jìn)去就/src/app/index.js可以了。使用不同文件夾中的代碼似乎有問題?也許我錯過了文檔中的某些內(nèi)容,但是我是否必須指定它應(yīng)該包含哪些目錄?我在in目錄中有express依賴項。corspackage.json/functions/
查看完整描述

2 回答

?
月關(guān)寶盒

TA貢獻(xiàn)1772條經(jīng)驗 獲得超5個贊

我最終嘗試了兩種不同的方法:

1. 創(chuàng)建一個指向我的應(yīng)用程序的符號鏈接 ?

在我的functions/目錄中,我創(chuàng)建了一個指向我的應(yīng)用程序的符號鏈接:?ln -s ../src ./src然后functions/index.js像這樣更改了路徑const app = require('../src/app') → const app = require('./src/app')

我能夠通過模擬器套件對此進(jìn)行測試,并且該函數(shù)也成功部署,并且我能夠調(diào)用已部署的函數(shù)。

2.從我的應(yīng)用程序創(chuàng)建本地模塊?

這種方法沒有奏效。我修改了package.jsonin/functions目錄,以便包含我的主要應(yīng)用程序:

"dependencies: {

? ...

? "app": "file://.."

? ...

}

然后/functions/index.js像這樣改變const app = require('../src/app') → const app = require('app')。但這并不能解決問題,因為 Firebase 僅上傳functions/目錄,不會上傳我的應(yīng)用程序。


我想一種方法是實(shí)際創(chuàng)建我的應(yīng)用程序的已發(fā)布模塊,然后 Firebase 會安裝它。我沒有這樣做,因為我真的不想發(fā)布我的應(yīng)用程序。但這是一種方式。


查看完整回答
反對 回復(fù) 2023-08-05
?
慕的地8271018

TA貢獻(xiàn)1796條經(jīng)驗 獲得超4個贊

當(dāng) Firebase CLI 部署您的代碼時,它僅使用“functions”文件夾中的文件。除此之外它不會部署任何東西。您的“src”文件夾位于外部,因此不會部署它。

您需要將“src/app/index.js”移動到函數(shù)文件夾內(nèi)的某個位置,并更改您的require指向它?;蛘?,您需要以某種方式創(chuàng)建一個模塊,當(dāng)它不在本地運(yùn)行時,您的 package.json 可以找到該模塊。


查看完整回答
反對 回復(fù) 2023-08-05
  • 2 回答
  • 0 關(guān)注
  • 137 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號