我的应用有一个页面,只有管理员可以登录以更改应用设置。问题是我有几个谷歌帐户。因此,当我使用其他帐户(例如 gmail)登录时,当我访问管理页面时,浏览器会显示:
Error: Forbidden
Your client does not have permission to get URL from this server.
没有机会更改登录用户并再次登录。谷歌似乎在他们的应用程序之间共享用户登录 cookie。
我的问题是如何提供一个页面让用户更改当前登录用户?
我用蟒蛇。
我自己的解决方案:
如果 app.yaml 有 login:admin,那么 GAE 无论如何都会将页面重定向到上述错误,而无需转到页面处理程序的 get 方法。所以不要使用 app.yaml login:admin 设置并放
if users.is_current_user_admin():
# normal code
else:
self.redirect("http://admin.google.com")
然后以下页面将让用户更改帐户。