我有一个基于 Python 的网络应用程序,在其中一个中,我想使用 Google 帐户让用户登录。这很简单,假设我的应用程序已打开:
我想做的是在用户导航到应用程序时使用 Google 帐户授权屏幕“问候”用户,并且只有在登录后,才能让他们看到应用程序的界面。
另一种方法是添加一个静态文件夹,假设是“premium”,在这种情况下,所有用户都可以在不登录的情况下看到应用程序的界面,但假设他们想进入:
因此,在这种情况下,我想将所有“/premium”URL 限制为登录用户...
我知道只需将此处理程序添加到我的“app.yaml”文件中即可轻松完成:
- url: /premium/.*
script: premium.py
login: required
但问题是,我不明白“premium.py”内容必须是什么......
你能帮我解决这个困惑吗?谢谢!
最佳答案
app.yaml 解决方案应该有效。但是您还询问了如何在 python 中执行此操作。两者都会起作用。两者都是不必要的。在这里:
from google.appengine.api import users
class Premium(webapp.RequestHandler):
def get(self):
user = users.get_current_user()
if not user:
this.redirect(users.create_login_url(this.request.uri))
# Your normal page code here
(我假设您了解其余部分,或者您真的需要阅读 GAE hello world 教程)
清除浏览器 cookie!特别是当您使用本地开发环境时。您可能已登录但不知道!
关于python - 如何在 App Engine 中使用 Google Acounts API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4788606/