pyramid配置session的方法教程

yipeiwu_com6年前Python基础

1. 使用默认的session, 在ini文件中:

复制代码 代码如下:

from pyramid.session import UnencryptedCookieSessionFactoryConfig
my_session_factory = UnencryptedCookieSessionFactoryConfig('itsaseekreet')

from pyramid.config import Configurator
config = Configurator(session_factory = my_session_factory)

缺点:
这个session是存储在Cookie中的,安全性低。
Cookie有大小限制

2. 使用Beaker

beaker session可以把session存储在服务器端文件,数据库,客户端加密Cookie中

 配置文件修改:

复制代码 代码如下:

pyramid.includes = pyramid_debugtoolbar 
                                   pyramid_tm 
                                   pyramid_beaker

 # pyramid_beaker add-on settings

session.type = file

session.data_dir = %(here)s/data/sessions/data

session.lock_dir = %(here)s/data/sessions/lock

session.key = customerskey

session.secret = customerssecret

session.cookie_on_exception = true

__init__.py中:

复制代码 代码如下:

# pyramid_beaker add-on 
session_factory = session_factory_from_settings(settings)

 

config = Configurator(
        settings=settings,
        session_factory=session_factory
    )

相关文章

在Python的Flask框架中验证注册用户的Email的方法

在Python的Flask框架中验证注册用户的Email的方法

本教程详细介绍在用户注册过程中如何去验证他们的email地址。 工作流程上来讲,在用户注册一个新账户后会寄送一个确认信。直到用户按指示完成了邮件中的“验证”,否则他们的账户会一直处于“未...

实例详解Python模块decimal

Python提供了decimal模块用于十进制数学计算,它具有以下特点: 1.提供十进制数据类型,并且存储为十进制数序列; 2.有界精度:用于存储数字的位数是固定的,可以通过decima...

Python 序列化 pickle/cPickle模块使用介绍

Python序列化的概念很简单。内存里面有一个数据结构,你希望将它保存下来,重用,或者发送给其他人。你会怎么做?这取决于你想要怎么保存,怎么重用,发送给谁。很多游戏允许你在退出的时候保存...

Django 创建/删除用户的示例代码

Django 创建/删除用户的示例代码

示意图: html: {# 用户管理 #} <div id="userManageDiv" style="display: none;"> <div...

Python中使用gzip模块压缩文件的简单教程

压缩数据创建gzip文件 先看一个略麻烦的做法   import StringIO,gzip content = 'Life is short.I use python'...