我希望为连接到我的web应用程序的每个浏览器记录一个唯一的标识符(这是用Pylons编写的)。我在客户端上保留了一个cookie来跟踪这一点,但是如果cookie不存在,那么我想生成一个新的唯一标识符,该标识符将随响应一起发送回客户端,但我也可能希望从用于生成响应的其他代码中访问此值。
将此值附加到pylons.request是否安全?或者我需要做一些事情,比如使用threading_local使线程成为本地线程,在处理每个新请求时重置该线程?
发布于 2009-07-14 17:07:35
为什么需要唯一的标识符?基本上,每个访问者都已经有了一个唯一的标识符,即他的会话。Beaker,Pylons会话和缓存中间件,完成所有工作并跟踪访客,通常使用会话cookie。所以不要关心跟踪用户,只需要使用会话来存储你拥有的任何特定于用户的东西。
from pylons import session
session["something"] = whatever()
session.save()
# somewhen later
something = session["something"]发布于 2009-07-15 01:43:11
无论您在请求上设置什么,都将只在请求的持续时间内有效。正如TCH4k所说,您所描述的问题更适合使用会话来处理。它已经在中间件中启用了,所以请继续。
https://stackoverflow.com/questions/1122537
复制相似问题