gpt4 book ai didi

python - Webapp2 session 在请求之间丢失

转载 作者:太空狗 更新时间:2023-10-30 00:15:07 25 4
gpt4 key购买 nike

我正在使用 webapp2_extras 设置 session 变量。如果我在设置变量后打印该变量,则该值是正确的。还会进行 save_sessions 调用。但是,当我再次发出请求时,变量没有设置。

大部分代码取自 webapp2 documentation :

import webapp2
from webapp2_extras import sessions

class BaseHandler(webapp2.RequestHandler):
def dispatch(self):
self.session_store = sessions.get_store(request=self.request)
try:
webapp2.RequestHandler.dispatch(self)
finally:
self.session_store.save_sessions(self.response)
@webapp2.cached_property
def session(self):
return self.session_store.get_session()

class MainHandler(BaseHandler):
def get(self):
foo = self.session.get('foo')
print foo
self.session['foo'] = 'bar'
foo = self.session.get('foo')
print foo
self.response.write(BaseHandler)

config = {}
config["webapp2_extras.sessions"] = {
"secret_key": "key",
}

app = webapp2.WSGIApplication([
('/', MainHandler)
], debug=True, config=config)

这总是返回“无某物”,但我希望它为第二个请求返回“某物某物”。

最佳答案

我知道这是一个相当古老的问题,但我刚刚遇到了同样的问题,这就是为我解决的问题。

我更改了 webapp2 配置对象以添加到 auth 参数中。

曾经是什么:

config = {}
config["webapp2_extras.sessions"] = {"secret_key": "key" }

app = webapp2.WSGIApplication([('/', MainHandler)], debug=True, config=config)

现在应该是:

config = {}
config["webapp2_extras.sessions"] = {"secret_key": "key" }
config["webapp2_extras.auth"] = {'session_backend': 'securecookie'}

app = webapp2.WSGIApplication([('/', MainHandler)], debug=True, config=config)

关于python - Webapp2 session 在请求之间丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13818523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com