Google App Engine:セッション管理
Google App Engineで作成したサイト
のセッション管理を、
≪gaeutilities≫
http://gaeutilities.appspot.com/
から、
≪gae-sessions≫
https://github.com/dound/gae-sessions
に変更。
gaeutilitiesを使って数日間セッションを保持していると、数日後sessions.Session()でエラーになる。cookieが残っていて、memcacheが消えたりしているのかもと思うが、原因不明。この場合、ブラウザのCookieを全て消去しないと復旧できない。gae-sessionsに変更してしばらく様子を見ることにする。
gae-sessionsの使用方法は、以下のサイトが参考になりました。
≪ACC開発ブログ:GAEでセッションを使ってみた by gae-sessions≫
http://d.hatena.ne.jp/iacctech/20110612/1307899228
gaeutilitiesからgae-sessionsへの変更メモ書き。
1. gaesessions/__init__.pyをアプリケーションフォルダへコピー。
2. appengine_config.pyを作成。(cookie_keyを適当に変える)
3. Pythonソースの以下の箇所を変更。
from appengine_utilities import sessions
↓↓↓
from gaesessions import get_current_session
sessions.Session()
↓↓↓
get_current_session()
self.sess.delete()
↓↓↓
self.sess.terminate()