Tornado的会话扩展,支持内存、文件、redis或memcached来保存会话数据。

torndsession的Python项目详细描述


Torndsession会话

TorndsessionTornadoweb框架的会话扩展。 Torndsession支持应用程序内存、文件、redis或memcached来保存会话数据以供请求,而且对开发人员来说很容易扩展

你好,会话

下面是一个简单的Tornado和Torndsession的“你好,会话”示例Web应用程序。

import tornado.web
import tornado.httpserver
import tornado.ioloop
import torndsession


class Application(tornado.web.Application):
    def __init__(self):
        handlers = [
            (r"/", MainHandler),
        ]
        settings = dict(
            debug=True,
        )
        # sid_name, lifetime added in 1.1.5.0
        # sid_name: the name of session id in cookies.
        # lifetime: session default expires seconds.
        session_settings = dict(
            driver='memory',
            driver_settings={'host': self},
            force_persistence=True,
            sid_name='torndsessionID',
            session_lifetime=1800
        ),
        settings.update(session=session_settings)
        tornado.web.Application.__init__(self, handlers, **settings)


class MainHandler(torndsession.sessionhandler.SessionBaseHandler):
    def get(self):
        self.write("Hello, Session.<br/>")
        if 'data' in self.session:
            data = self.session['data']
        else:
            data = 0
        self.write('data=%s' % data)
        self.session["data"] = data + 1


def main():
    http_server = tornado.httpserver.HTTPServer(Application())
    http_server.listen(8000)
    tornado.ioloop.IOLoop.instance().start()


if __name__ == "__main__":
    main()

在本例中,请求处理程序获取内存会话功能,它只是从sessionbasehandler继承。更多会话示例请参见torndsession demos

安装

自动安装

pip install torndsession

torndsession列在PyPI中,可以使用pipeasy\u install安装。请注意,此安装无法安装源代码中包含的演示应用程序

另一种方法是使用github安装torndsession

pip install git+https://github.com/mitchellchu/torndsession

手动安装

这样,您需要从PyPI下载源代码

tar xvzf torndsession.tar.gz
cd torndsession
python setup.py build
sudo python setup.py install

torndsession源代码托管在GitHub上。

已更新

第1.1.5节:

  • 修正了1.1.4中的错误
  • 默认会话id值生成器已更改见#ISSUE 12#
  • 在设置中添加了两个自定义键。
    • sid_name:会话的cookie名称
    • 会话生存期:会话的默认过期秒数。

Torndsession第1.1.4节:

  • 修正了错误

TornDSession 1.1.3修复了一些错误并支持Python3.x。

许可证

Torndsession是麻省理工学院授权的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java调用Python函数作为TEID中的UDF   java Android。支持v4导入不工作   java如何影响具有静态属性的类   java如何在从glTexImage2D()分配后编辑纹理的像素颜色   javaspringboot+rediscache+@Cacheable适用于某些方法,而不适用于其他方法   java无法将动态Web模块方面从3.0更改为2.5   java如何在新选项卡中显示打印的文档?   java Google Cloud Endpoints API方法仅在删除用户参数时成功调用   java为什么我可以使用Stack<Double>但不能使用Stack<Double>?   java JDBC PreparedStatement似乎忽略了占位符   java如何设置JInternalFrame的标准图标化位置?   Java文件。copy()不复制文件   基于另一个类的java显示arraylist?   java Android Studio:错误:非法字符:'\u2028'   对象(Java)无法实例化类型映像?   javascript错误:飞行前响应的HTTP状态代码401无效   java确保泛型vararg参数具有相同的类型