您看过webapp2会话吗?全部内置,您可以立即开始使用。
https://webapp2.readthedocs.io/zh- CN/latest/api/webapp2_extras/sessions.html
该模块为webapp2提供了轻量级但灵活的会话支持。它具有三个内置后端:安全cookie,内存缓存和数据存储。可以添加新的后端,以扩展CustomBackendSessionFactory。会话存储区可以通过SessionStore.get_session()方法使用不同的键(甚至在同一请求中使用不同的后端)提供多个会话。默认情况下,它使用配置中的默认密钥返回会话。
import webapp2
from webapp2_extras import sessions
class BaseHandler(webapp2.RequestHandler):
def dispatch(self):
# Get a session store for this request.
self.session_store = sessions.get_store(request=self.request)
try:
# Dispatch the request.
webapp2.RequestHandler.dispatch(self)
finally:
# Save all sessions.
self.session_store.save_sessions(self.response)
@webapp2.cached_property
def session(self):
# Returns a session using the default cookie key.
return self.session_store.get_session()
# To set a value:
self.session['foo'] = 'bar'
# To get a value:
foo = self.session.get('foo')
然后,围绕此构建登录系统确实很容易,似乎您已经完成了。然后,您可以将数据存储和/或内存缓存与webapp2会话结合使用,这是首选。