官方的例子
http://webpy.org/cookbook/sessions.zh-cn
服务器端有三种方式存session
一种是基本的store ,放在内存里吧
一种是diskstore ,会在code.py同级建一个sessions的文件夹
一种是dbstore,要对应的建一个表,试着改过对应的列的名字,会报错,目前看来也就是这个db的表里面的东西都是固定的
create table sessions ( session_id char(128) UNIQUE NOT NULL, atime timestamp NOT NULL default current_timestamp, data text );
测试的结果
db.py
import sqlite3
cx = sqlite3.connect('d:/temp/sessions.db') cu=cx.cursor() #cu.execute(''' create table sessions ( #session_id char(128) UNIQUE NOT NULL, #atime timestamp NOT NULL default current_timestamp, #data text) #''') #cx.commit() cu.execute('select * from sessions') for i,row in enumerate(cu): print i,row cx.close()
code.py
import web import sqlite3 web.config.debug = False urls = ( "/count", "count", "/reset", "reset" ) app = web.application(urls, locals()) #store = web.session.DiskStore('sessions') #session = web.session.Session(app, store, initializer={'count': 0}) db = web.database(dbn='sqlite', db='sessions.db', ) store = web.session.DBStore(db, 'sessions') session = web.session.Session(app, store, initializer={'count': 0}) class count: def GET(self): session.count += 1 return str(session.count) class reset: def GET(self): session.kill() store.cleanup(0.002) #加了个cleanup看效果来着 return "" if __name__ == "__main__": app.run()
真是太简单了,连session都有3种方法可以选,我怎么没记得以前java有这么灵活呢?
不过,不管是读写文件还是数据库,总是比较慢的吧?
还有挺奇怪的是reset的时候,不要cleanup一下么?只是kill掉进程的话,不论是文件还是db,都会越来越大的 吧?
真要是本番的话,要不要再写个cron定期清一下?
或者如果真的是本番,根本不会用这2个方法?
发表评论
-
用webpy+gae做一个隐藏播放文件地址的东东,失败了2 -半成功
2012-04-23 21:14 1006昨天说到失败了想换一个html5播放器试试其实跟播放器根本没有 ... -
用webpy+gae做一个隐藏播放文件地址的东东,失败了
2012-04-22 22:52 1360很简单 想把一些mp3文件放到gae上,不过不想被下载,虽 ... -
用chrome访问gae的static文件的问题
2012-04-21 14:49 2655Traceback (most recent call ... -
一篇写的还不错的gae入门
2012-04-08 20:37 1021经过一段时间的摸索,感觉gae已经入门了 特地把查到的资料上 ... -
web.py笔记gae的session总结
2012-03-09 00:04 2572这几天利用gae部署webpy的小东西 感慨颇多 1 ga ... -
web.py笔记db处理 坑爹_test=True
2012-03-04 15:44 3278http://webpy.org/cookbook/Inser ... -
web.py笔记 表单post的checkbox
2012-03-02 23:40 3626<p> <label for=&quo ... -
web.py笔记 中文html
2012-03-01 00:37 1366本来今天测试的是数据库 结果在template的html里面 ... -
web.py笔记模板3 i18n 切换
2012-02-26 21:42 1671研究了很久pot,po,gettext,poedit的文档 ... -
web.py笔记模板2 i18n准备po和mo文件
2012-02-22 22:23 1723其实,今天晚上本来像做i18n的 http://webpy. ... -
web.py笔记模板1
2012-02-21 22:27 3439http://webpy.org/docs/0.3/templ ... -
web.py笔记 cookie
2012-02-19 16:28 1493官方url http://webpy.org/co ... -
web.py笔记 大块文件下载
2012-02-17 22:26 4646官方url http://webpy.org/cook ... -
web.py笔记 处理404 500
2012-02-12 22:50 3161官方cookbook http://webpy. ... -
wing ide 设置
2012-02-12 22:43 11331用惯了eclipse,这个轻量级的wingide 还真是有点不 ... -
web.py笔记ctx
2012-02-12 16:48 4880http://webpy.org/cookbook/ctx ... -
web.py笔记ssl 续 apache
2012-02-11 22:32 1382对前几天ssl的连接方式,仍然比较担心 感觉不是那么妥当 ... -
web.py笔记ssl 坑爹
2012-02-09 21:42 3805今天又回过神来,准备看看web.py的ssl支持 结果调了半 ... -
web.py 笔记 控制url
2012-01-15 22:54 4106web.py 的url控制说明 ,官方的中文coo ... -
web.py
2012-01-04 21:37 7555http://webpy.org/ import ...
相关推荐
在本文中,我们将深入探讨如何使用Django框架与MySQL数据库构建一个全栈Web应用程序,重点关注session和cookie在权限管理中的应用。首先,我们来看一下Django框架,它是一个基于Python的高级Web开发框架,提供了MVC...
当需要在后台获取Session数据时,可以使用`req.session.get()`方法: ```python print('session 中的数据' + req.session.get("userAccount")) ``` 在设置Session时,需要确保已经执行了所有未应用的迁移,以创建...
**Flask快速入门精品课程笔记概述** Flask是一款轻量级的Web应用框架,由Armin Ronacher开发,基于Python语言。它的核心理念是“轻便”和“可...这份笔记将是你学习Flask的宝贵资料,助你在Web开发的道路上稳步前行。
接下来,我们可能要学习如何设置请求头、处理cookies和session,因为大众点评网站通常会对非正常用户行为(如频繁访问)进行反爬机制。我们需要模拟浏览器行为,避免被网站封禁。这可能涉及到设置User-Agent、延时...
使用Python的Flask框架构建Web应用,可以高效地开发出具有用户管理功能的笔记应用。通过集成HTML模板、数据库操作和用户认证,我们可以创建一个简洁而功能丰富的Web应用,满足用户的个性化需求。不断学习和实践Flask...
- **Session管理**:Flask通过session机制来跟踪用户状态,当用户成功登录后,会将用户的认证信息存储在服务器端的一个session中,每次请求时检查session内容以确定用户是否已登录。 - **表单处理**:用户输入数据...
Flask Study 学习flask的日常笔记 flask-so-easy ...py01:Flask简介 安装 ...py09:Flask session microblog microblog是The Flask Mega-Tutorial学习代码 Part I: Hello, World! Part II: Templates Part III: Web Form
2. 数据存储:可以使用Flask的session或数据库(如SQLite)来存储笔记。当用户提交笔记时,将其存储并显示在页面上。 3. 动态更新:通过Ajax或者重定向实现页面的动态更新,用户可以查看、编辑或删除笔记,而无需...
g.session.close() ``` Flask集成Jinja2模板引擎,允许自定义过滤器和全局变量。例如,定义一个反转字符串的过滤器: ```python @app.template_filter('reverse') def reverse_filter(s): return s[::-1] ``` ...
Flask通过session管理用户状态,确保只有登录用户才能访问他们的笔记。 为了扩展这个应用,可以添加更多功能,如: - 用户身份验证和授权:使用如Flask-Login扩展进行用户身份验证,限制未授权访问。 - 数据库集成...
【标题】"python_django_study" 指的是一个关于Python Django框架的学习资源,可能是教程、项目代码或者学习笔记。这个标题暗示了我们将探讨如何使用Python的Django框架进行Web开发。 【描述】中提到的"桑赫儿子...