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 关注
- 72 浏览
添加回答
举报