pyramid配置session的方法教程

yipeiwu_com5年前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
    )

相关文章

利用Anaconda完美解决Python 2与python 3的共存问题

前言 现在Python3 被越来越多的开发者所接受,同时让人尴尬的是很多遗留的老系统依旧运行在 Python2 的环境中,因此有时你不得不同时在两个版本中进行开发,调试。 如何在系统中同...

Python 过滤字符串的技巧,map与itertools.imap

具体的实例 我们需要在目录中遍历,包括子目录(哈哈),找出所有后缀为:rmvb ,avi ,pmp 的文件。(天哪?!你要干什么?这可是我的隐私啊~~) 复制代码 代码如下:import...

用Python中的wxPython实现最基本的浏览器功能

通常,大多数应用程序通过保持 HTML 简单来解决大多数浏览器问题 ― 或者说,根据最低共同特性来编写。然而,即便如此,也仍然存在字体和布局的问题,发行新浏览器和升级现有浏览器时,也免不...

python中copy()与deepcopy()的区别小结

python中copy()与deepcopy()的区别小结

前言 copy()与deepcopy()之间的区分必须要涉及到python对于数据的存储方式。 深复制被复制对象完全再复制一遍作为独立的新个体单独存在。所以改变原有被复制对象不会对已经复...

详解python里使用正则表达式的全匹配功能

详解python里使用正则表达式的全匹配功能 python中很多匹配,比如搜索任意位置的search()函数,搜索边界的match()函数,现在还需要学习一个全匹配函数,就是搜索的字符与...