2 回答

TA貢獻1811條經驗 獲得超5個贊
試圖重現您的錯誤,但我無法復制。我使用了與您相同的命令,并且可以成功訪問 url 或通過 HTTP 調用觸發部署的 hello world 云功能。
gcloud functions deploy hellogo --entry-point=HelloWorld --trigger-http --region=us-central1 --memory=128MB --runtime=go116 --allow-unauthenticated
成功卷曲的輸出:
我建議您根據此 GCP文檔檢查您嘗試訪問的網址:
如果您嘗試調用不存在的函數,Cloud Functions 會使用 HTTP/2 302 重定向進行響應,該重定向會將您帶到 Google 帳戶登錄頁面。這是不正確的。它應該以 HTTP/2 404 錯誤響應代碼進行響應。問題正在得到解決。
解決方案
確保正確指定函數的名稱。您始終可以使用 gcloud 函數調用進行檢查,該函數調用會為缺少的函數返回正確的 404 錯誤。
您還可以參考此完整指南,以使用 Go 運行時快速啟動 CF 創建和部署。

TA貢獻1811條經驗 獲得超4個贊
我陷入困境的項目中的代碼不僅僅是這個函數。在嘗試在更大的項目中部署單個函數/文件后,我走上了這條路。如果我簡化為僅包含 a 的文件夾,hello.go并且go.mod確實可以:-/ 從命令行部署它:
gcloud functions deploy hellogo --entry-point=HelloWorld --trigger-http --region=us-central1 --memory=128MB --runtime=go116 --allow-unauthenticated
// go.mod
module github.com/nickfoden/hello
go 1.16
感謝您的快速回復和幫助。而不是嘗試在現有項目中創建具有更大 go.sum、多個文件夾、現有服務器/api 等的單個函數。我將從這里開始,擁有一個具有云功能的單個文件并在其之上構建并查看什么點/如果我再次卡住。
- 2 回答
- 0 關注
- 99 瀏覽
添加回答
舉報