2011-09-24 67 views
1

天儿真好, 我下面的指导设置Cookie这里找到:http://www.doughellmann.com/PyMOTW/Cookie/
具有代码:检索在Python服务器端

c = Cookie.SimpleCookie() 
c.load(HTTP_COOKIE) 

取回cookie的预先设定的(服务器) ,但我的服务器没有HTTP_COOKIE变量,那么我该怎么办呢?
我宁愿继续使用上述指南的方法,但如果有更好的东西,我愿意考虑它。
否则,我没有使用任何框架(只是原始的.py文件),并希望保持这种方式。
干杯

+0

这些是说明API的代码狙击手。 HTTP_COOKIE是Cookie标题的*值*,您需要使用适合运行时环境的任何方法(如cgi-bin或wsgi)来获取它。 – pyroscope

+0

啊是的,我现在用: 进口操作系统; os.environ ['HTTP_COOKIE']; – ProfSmiles

+0

如果您回答自己的问题并接受它,那么它将成为社区的服务:^) –

回答

0

在评论中讨论的方法是:

import os 
def getcookies(): 
    cookiesDict = {} 
    if 'HTTP_COOKIE' in os.environ: 
     cookies = os.environ['HTTP_COOKIE'] 
     cookies = cookies.split('; ') 
     for cookie in cookies: 
      cookie = cookie.split('=') 
      cookiesDict[cookie[0]] = cookie[1] 
    return cookiesDict 

这将随后返回cookies的字典作为key -> value

cookies = getcookies() 
userID = cookies['userID'] 

,显然你会再添加错误处理

然而,也有其他方法,例如,使用cookie module