1
ryan123 2014-05-28 05:48:11 +08:00
我也是新手, 貌似是在浏览器端的cookie存session id, 然后服务器获取此cookie中的session id.
然后服务器编译后检查是否匹配? |
2
loading 2014-05-28 06:56:50 +08:00 via Android
flask会默认存到内存里,你可以杀掉进程,再去看还在不在。如果为了防掉电等需要持久化,可以存到各种数据库!
客户端是浏览器存到cookie里,这个用什么都是这里,。 |
3
Ever 2014-05-28 07:34:34 +08:00
flask用的secure cookie方式保存session, 即session数据是加密后保存在用户cookie里.
|
5
loading 2014-05-28 08:27:10 +08:00 via Android
|
6
Ever 2014-05-28 08:44:05 +08:00 1
@lovesky 我觉得自由选择用着不太合适, 毕竟secure cookie是flask唯一自带的session方案, 但是flask确实留了接口, 自由实现较妥。
@loading 和这不冲突, 只是把原本服务器的backend换成了加密后保存在客户端的cookie. https://github.com/mitsuhiko/flask/blob/master/flask/sessions.py secure cookie方案rails用得比较早, 你留心下github和twitter就发现他们的cookie里有个_xx_sess字段, 就是通过secret key加密后base64过的session. |
7
humiaozuzu 2014-05-28 09:06:39 +08:00 1
=.= flask 默认的是 client side session,什么意思自己 google 下就明白了。
为了对用户负责,请用 server side session,一般我们都用redis,可以持久化。可以手动也可以用插件 http://flask.pocoo.org/snippets/75/ https://github.com/fengsp/flask-session |
8
clino 2014-05-28 09:11:18 +08:00
看起来uliweb的session比flask的要好啊
https://limodou.github.io/uliweb-doc/zh_CN/session.html 内置好了3种session存储后端的类型,把常用的都覆盖到了 ''' type 表示session存储后端的类型,目前可用的值有: file 文件系统 database 数据库 redis redis数据库 ''' |
10
shinerene OP @humiaozuzu 我也在看Redis,但是关于session的存储我还是有个疑问,就是如果我有100个用户连接着我的服务器,他们都登陆了,那么我的服务器端的session是是如何存储每个人的信息的?是每人一个session,如果是这样那么命名方式是怎样的呢?session1,session2?之后存储在一个内存中的表中么?
|
11
humiaozuzu 2014-05-28 15:47:15 +08:00
@shinerene 去 redis 里面看下不就知道格式了
|
12
shinerene OP @loading 我在Flask里面import的时候 可以import session和import sessions,我看文档的blog的实例中 是import session 请问这两个有什么区别?
|
13
loading 2014-05-28 18:18:38 +08:00 via Android
|