我想我使用用戶API錯誤:谷歌應用程序引擎:API的用戶行爲異常
class BaseHandler(webapp.RequestHandler):
user = users.get_current_user()
def header(self, title):
if self.user:
render('Views/link.html', self, {'text': 'Log out', 'href': users.create_logout_url('/')})
else:
render('Views/link.html', self, {'text': 'Log in', 'href': users.create_login_url('/')})
link.html:
<p>
<a href="{{href}}">{{text}}</a>
</p>
有時工作,有時它不」噸。我將連續10次單擊「註銷」鏈接,然後重新加載頁面,它會將我重定向到'/'
頁面。然後,神祕地,我將退出其中一次。登錄失敗的方式基本相同。這裏發生了什麼?
解決 - 這工作:
class BaseHandler(webapp.RequestHandler):
def __init__(self):
self.user = users.get_current_user()
def header(self, title):
if self.user:
render('Views/message.html', self, {'msg': "Welcome, %s" % self.user.nickname()})
render('Views/link.html', self, {'text': 'Log out', 'href': users.create_logout_url('/')})
else:
render('Views/link.html', self, {'text': 'Log in', 'href': users.create_login_url('/')})
它看起來像我可以通過參考它們爲self.var_name
的功能,但從來沒有在類級別聲明他們擁有實例變量。奇。
這實際上是一個GAE還是開發者服務器? – prestomation
這是在我的機器上的開發服務器上運行。 –
你需要使用螢火蟲或其他開發控制檯來查看當你點擊'註銷'時發生了什麼。它應該將你重定向到/ _ah/...,它應該發送一個Set-Cookie頭來清除cookie,然後將你重定向回到/。 –