我有一个功能强大的Go应用程序,我已在本地运行了几个月。通过Google Cloud进行设置,对实时域进行了测试,一切正常。
回顾我的本地机器,我想运行local Google AppEngine server(而不是直接运行我的Go应用程序)。它运行,但我正在尝试使用app.yaml中的“login:required”参数,我在localhost:8080看到登录表单,但无论我输入什么电子邮件,它都会因503错误而超时。 / p>
我的app.yaml:
application: myapp-dev
env: flex
runtime: go
api_version: go1
handlers:
- url: /
script: _go_app
login: required
我用来运行本地应用程序的命令:
dev_appserver.py app.yaml
答案 0 :(得分:0)
灵活的环境不支持通过app.yaml提供“登录”功能(在您的应用中常规登录的外部)。
标准环境app.yaml doc 列出“登录”功能:https://cloud.google.com/appengine/docs/standard/go/config/appref
灵活的环境app.yaml doc 不列出“登录”功能:https://cloud.google.com/appengine/docs/flexible/go/configuring-your-app-with-app-yaml
但更具体地说,一个关于从Standard-to-Flex升级的页面提到了flex的登录处理程序已被弃用:
https://cloud.google.com/appengine/docs/flexible/go/upgrading
现在,App Engine下的处理程序下的登录设置已弃用 灵活的环境。您应该遵循用户服务的指导 迁移。
基本上,在flex环境中,您的应用程序之外不存在项目范围的登录控件。您必须让应用初始化,然后进行正常的身份验证/授权。
对于我自己的项目,我想要一个快速的应用程序范围的安全级别,所以我可以提供访客帐户,并让他们看到我的应用程序的公共未登录视图。是的,我可以在我的应用程序中执行相同操作,我只想保存一些工作。