我想跟踪连接到我的Web应用程序(用Pylons编写)的每个浏览器的唯一标识符。我在客户端上保留一个cookie以跟踪它,但是如果不存在该cookie,那么我想生成一个新的唯一标识符,该标识符将与响应一起发送回客户端,但是我可能还想从用于生成响应的其他代码中访问此值。

将这个值附加到pylons.request是否安全?还是我需要做一些诸如使用threading_local这样的事情来使本地线程在处理每个新请求时重置?

最佳答案

为什么要一个唯一的标识符?基本上,每个访问者都已经获得了一个唯一的标识符,即他的会话。 Beaker是Pylons会话和缓存中间件,通常会通过Session cookie来完成所有工作并跟踪访问者。因此,不必在乎跟踪用户,只需使用Session的用途,即可存储您拥有的任何用户特定的东西。

from pylons import session
session["something"] = whatever()
session.save()

# somewhen later
something = session["something"]

关于python - 我可以在Pylons的pylons.request上附加什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1122537/

10-12 20:11