使用 CherryPy 将变量传递给会话

Pass variable to session using CherryPy

我已经开始在项目中使用 CherryPy。我喜欢它,因为它很简单,但由于缺乏文档,学习曲线一直很陡峭。

首先,我想 "set" 用户会话中的一个变量。

@cherrypy.expose
def setter(self):
    email = "email@email.com"
    cherrypy.session["email"] = email
    return "Variable passed to session"        

其次,我想在另一个函数上从会话中调用该变量。

@cherrypy.expose
def getter(self):
    return cherrypy.session.get("email")        

您的 "set" 示例是正确的。

cherrypy.session["email"] = email

但是您的 "get" 示例应该是:

return cherrypy.session["email"]

您要启用会话吗?

如果您使用的是配置文件,请添加:

[/]
tools.sessions.on = True

或者,如果您将配置字典传递给快速入门或类似的东西:

{'/': {'tools.session.on': True}} 

查看 https://github.com/cherrypy/cherrypy/blob/master/cherrypy/lib/sessions.py

中会话模块的文档字符串