关注微信公众号(瓠悠笑软件部落),一起学习,一起摸鱼
应用程序需要暂时关注用户的活动并不罕见。 通常的机制是使用在用户和应用程序之间的对话期间携带的会话标识符(session identifier)。
#! /usr/bin/python3
import random
import string
import cherrypy
class StringGenerator(object):
@cherrypy.expose
def index(self):
return """<html>
<head></head>
<body>
<form method="get" action="generate">
<input type="text" value="8" name="length" />
<button type="submit">Give it now!</button>
</form>
</body>
</html>"""
@cherrypy.expose
def generate(self, length=8):
some_string = ''.join(random.sample(string.hexdigits, int(length)))
cherrypy.session['mystring'] = some_string
return some_string
@cherrypy.expose
def display(self):
return cherrypy.session['mystring']
if __name__ == '__main__':
conf = {
'/': {
'tools.sessions.on': True
}
}
cherrypy.quickstart(StringGenerator(), '/', conf)
将其保存到名为tut05.py的文件中,并按如下方式运行:
$ python tut05.py
在此示例中,我们按照上一个教程生成字符串,但也将其存储在当前会话中。 如果你去http://localhost:8080/,生成一个随机字符串,然后转到http://localhost:8080/display,你会看到你刚刚生成的字符串。
第30-34行显示了如何在CherryPy应用程序中启用会话支持。 默认情况下,CherryPy会将会话保存在进程的内存中。 它还支持更持久的后端。