Python论坛  - 讨论区

标题:Re: [python-chinese] django中 登陆后的session处理

2006年05月03日 星期三 14:44

风向标 vaneoooo at gmail.com
Wed May 3 14:44:33 HKT 2006

今天第三天了
这个问题还是没解决`~

呼唤大牛呐~~

在06-4-30,gashero <harry.python at gmail.com> 写道:
>
>
> 不知道,我实验mod_python时,其中的Session在win32下默认使用MemorySession。其中就是不管timeout设的多长,如果用户关闭浏览器,Session就会消失。而且就算在一台电脑上,不同的浏览器进程都是拥有不同的Session的,而且互不干扰,运行的还不错。
> Django有几种不同的底层实现,如果是用mod_python的话,那么MemorySession可以参考一下。
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060503/3af1f9cf/attachment-0001.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年05月03日 星期三 17:10

ygao ygao2004 at gmail.com
Wed May 3 17:10:26 HKT 2006

"多个session都赋给request.session['username'] 是行不通的",它为什么行不通,想当然是不行的。除非你实时观察到行不通。
你实验一下,你自己应该可以解决。web服务器是可以调试的,如果你不能理解的话。
wingide是可以调试django的。


On 5/3/06, 风向标 <vaneoooo at gmail.com> wrote:
>
>
>
> 今天第三天了
> 这个问题还是没解决`~
>
> 呼唤大牛呐~~
>
> 在06-4-30,gashero <harry.python at gmail.com> 写道:
> >
> >
> 不知道,我实验mod_python时,其中的Session在win32下默认使用MemorySession。其中就是不管timeout设的多长,如果用户关闭浏览器,Session就会消失。而且就算在一台电脑上,不同的浏览器进程都是拥有不同的Session的,而且互不干扰,运行的还不错。
> Django有几种不同的底层实现,如果是用mod_python的话,那么MemorySession可以参考一下。
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>


--
※※※※※※※※※※※※※※※※※※※※※※※※
My blog:  http://blog.donews.com/ygao
Forum    http://groups.google.com/group/python_study
※※※※※※※※※※※※※※※※※※※※※※※※
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060503/41050626/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年05月03日 星期三 19:31

风向标 vaneoooo at gmail.com
Wed May 3 19:31:39 HKT 2006

我确实动手试过了
赋值会导致覆盖
覆盖的话  多用户访问总是不行的

主要是想问下例如limodou和宁柯兄之类的
有过经验的仁兄来讲解一下原理

自己也有在做实验,不过愚笨了  困绕3天了还一无所获

谢谢ygao兄指教!


2006/5/3, ygao <ygao2004 at gmail.com>:
>
>  "多个session都赋给request.session['username']
> 是行不通的",它为什么行不通,想当然是不行的。除非你实时观察到行不通。
> 你实验一下,你自己应该可以解决。web服务器是可以调试的,如果你不能理解的话。
> wingide是可以调试django的。
>
>
>  On 5/3/06, 风向标 <vaneoooo at gmail.com> wrote:
> >
> >
> >
> > 今天第三天了
> > 这个问题还是没解决`~
> >
> > 呼唤大牛呐~~
> >
> > 在06-4-30,gashero <harry.python at gmail.com > 写道:
> > >
> > >
> > 不知道,我实验mod_python时,其中的Session在win32下默认使用MemorySession。其中就是不管timeout设的多长,如果用户关闭浏览器,Session就会消失。而且就算在一台电脑上,不同的浏览器进程都是拥有不同的Session的,而且互不干扰,运行的还不错。
> > Django有几种不同的底层实现,如果是用mod_python的话,那么MemorySession可以参考一下。
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
> >
> >
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
> >
>
>
> --
> ※※※※※※※※※※※※※※※※※※※※※※※※
> My blog:  http://blog.donews.com/ygao
> Forum    http://groups.google.com/group/python_study
> ※※※※※※※※※※※※※※※※※※※※※※※※
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060503/ccd46cd8/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年05月04日 星期四 07:17

Lea.Cen leacen at gmail.com
Thu May 4 07:17:45 HKT 2006

>
>  赋值会导致覆盖
> 覆盖的话  多用户访问总是不行的
>
>

session应该不会覆盖吧?
你说的这个好象也不只是django才出现的吧,我用过的其他的语言中session也还是会在浏览器关闭后就会失效啊
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060504/57485dff/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年05月04日 星期四 13:24

风向标 vaneoooo at gmail.com
Thu May 4 13:24:59 HKT 2006

To:*Wensheng Wang *
我思路同仁兄说的一样.问题是如何实现再次访问时从session中提取出user_id
当存入session的时候,如果使用明确的key,例如['user_id']
这样在提取时倒是方便了
可以直接userid=request.session.get{'user_id',None}


但是如果这样,当多用户使用时,每个用户登陆都会把session存入['user_id']
这样会导致值的覆盖

再提取时恐怕就不是这个值了

当然,可以通过这样解决存入问题:
user=modelclass(username='test',password='123456')
user.save()
request.session[user.id]=user.id

但是提取就成了问题.如果保证每个用户访问时能从session中找到属于它的ID?user.id当时的值是多少?  难....

to:lee cen

我个人访问的很多站点,关闭浏览器是不会失效的吧?除非执行清空cookies
否则交互内容会一直存在的.
不仅仅django是这样

感谢二位仁兄回复!



在06-5-4,Lea. Cen <leacen at gmail.com> 写道:
>
>   赋值会导致覆盖
> > 覆盖的话  多用户访问总是不行的
> >
> >
>
> session应该不会覆盖吧?
> 你说的这个好象也不只是django才出现的吧,我用过的其他的语言中session也还是会在浏览器关闭后就会失效啊
>
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060504/610d1c00/attachment-0001.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年05月04日 星期四 13:41

ygao ygao2004 at gmail.com
Thu May 4 13:41:33 HKT 2006

"但是如果这样,当多用户使用时,每个用户登陆都会把session存入['user_id']
这样会导致值的覆盖",你怎么知道会导致值的覆盖???
request.session的类型是可以是字典,也可以是类似字典的类型,也就是django可能子类化了标准字典的行为,可能跟你想的不一样。



On 5/4/06, 风向标 <vaneoooo at gmail.com> wrote:
>
>
> To:*Wensheng Wang *
> 我思路同仁兄说的一样.问题是如何实现再次访问时从session中提取出user_id
> 当存入session的时候,如果使用明确的key,例如['user_id']
> 这样在提取时倒是方便了
> 可以直接userid=request.session.get{'user_id',None}
>
>
> 但是如果这样,当多用户使用时,每个用户登陆都会把session存入['user_id']
> 这样会导致值的覆盖
>
> 再提取时恐怕就不是这个值了
>
> 当然,可以通过这样解决存入问题:
> user=modelclass(username='test',password='123456')
> user.save()
> request.session[user.id]=user.id
>
> 但是提取就成了问题.如果保证每个用户访问时能从session中找到属于它的ID?user.id当时的值是多少?  难....
>
> to:lee cen
>
> 我个人访问的很多站点,关闭浏览器是不会失效的吧?除非执行清空cookies
> 否则交互内容会一直存在的.
> 不仅仅django是这样
>
> 感谢二位仁兄回复!
>
>
>
> 在06-5-4,Lea. Cen <leacen at gmail.com> 写道:
> >
> >    赋值会导致覆盖
> > 覆盖的话  多用户访问总是不行的
> >
> >
>
> session应该不会覆盖吧?
> 你说的这个好象也不只是django才出现的吧,我用过的其他的语言中session也还是会在浏览器关闭后就会失效啊
>
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>


--
※※※※※※※※※※※※※※※※※※※※※※※※
My blog:  http://blog.donews.com/ygao
Forum    http://groups.google.com/group/python_study
※※※※※※※※※※※※※※※※※※※※※※※※
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060504/dafc3fb9/attachment.html

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2006年05月04日 星期四 14:02

风向标 vaneoooo at gmail.com
Thu May 4 14:02:42 HKT 2006

yagao兄
因为我在昨天测试了一段代码
让函数返回session的items()函数的值

通过结果得出
我第一次登陆
('user_id',1)
第二次登陆 页面返回('user_id',2)

我换浏览器为FireFox,登陆,页面显示('user_id',3)
再到ie登陆 ('user_id',4)

所以我才认为会覆盖的





2006/5/4, ygao <ygao2004 at gmail.com>:
>
>  "但是如果这样,当多用户使用时,每个用户登陆都会把session存入['user_id']
>  这样会导致值的覆盖",你怎么知道会导致值的覆盖???
> request.session的类型是可以是字典,也可以是类似字典的类型,也就是django可能子类化了标准字典的行为,可能跟你想的不一样。
>
>
>
> On 5/4/06, 风向标 <vaneoooo at gmail.com> wrote:
> >
> >
> > To:*Wensheng Wang *
> > 我思路同仁兄说的一样.问题是如何实现再次访问时从session中提取出user_id
> > 当存入session的时候,如果使用明确的key,例如['user_id']
> > 这样在提取时倒是方便了
> > 可以直接userid=request.session.get{'user_id',None}
> >
> >
> > 但是如果这样,当多用户使用时,每个用户登陆都会把session存入['user_id']
> > 这样会导致值的覆盖
> >
> > 再提取时恐怕就不是这个值了
> >
> > 当然,可以通过这样解决存入问题:
> > user=modelclass(username='test',password='123456')
> > user.save()
> > request.session[user.id]= user.id
> >
> > 但是提取就成了问题.如果保证每个用户访问时能从session中找到属于它的ID?user.id当时的值是多少?  难....
> >
> > to:lee cen
> >
> > 我个人访问的很多站点,关闭浏览器是不会失效的吧?除非执行清空cookies
> > 否则交互内容会一直存在的.
> > 不仅仅django是这样
> >
> > 感谢二位仁兄回复!
> >
> >
> >
> > 在06-5-4,Lea. Cen <leacen at gmail.com> 写道:
> > >
> > >    赋值会导致覆盖
> > > 覆盖的话  多用户访问总是不行的
> > >
> > >
> >
> > session应该不会覆盖吧?
> > 你说的这个好象也不只是django才出现的吧,我用过的其他的语言中session也还是会在浏览器关闭后就会失效啊
> >
> >
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
> >
> >
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese at lists.python.cn
> > Subscribe: send subscribe to python-chinese-request at lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
> >
>
>
> --
> ※※※※※※※※※※※※※※※※※※※※※※※※
> My blog:  http://blog.donews.com/ygao
> Forum    http://groups.google.com/group/python_study
> ※※※※※※※※※※※※※※※※※※※※※※※※
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20060504/4e4eea09/attachment.htm

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2025

    京ICP备05028076号