1

我对 App Engine 很陌生。我想使用 google.appengine.api.users 模块提供的简单用户 api 创建用户登录

  def get(self):
    user = users.get_current_user()

    if user:
        self.response.headers['Content-Type'] = 'text/html'
        logout = users.create_logout_url('/')

    else:
        self.redirect(users.create_login_url(self.request.uri))
        user = users.get_current_user()
        user_name = user.nickname()            

但似乎没有重定向到登录 url。它显示错误“NoneType”对象没有属性昵称

我的代码有什么问题?如果我删除 else 子句下的 user.nickname() 调用,它工作正常......

4

1 回答 1

1

一旦你执行

self.response.write("Redirecting to the login page......")

响应返回给用户。你只能写一个回复。因此,一旦您实际到达所需的页面,只需进行重定向,然后再进行所有其他操作。

你不能增量地写响应,要么全有,要么全无。

于 2015-03-08T11:52:17.213 回答