【问题标题】:Retrieve a cookie set in Python serverside在 Python 服务器端检索 cookie 集
【发布时间】:2011-09-24 16:26:06
【问题描述】:

节日, 我正在关注此处的指南:http://www.doughellmann.com/PyMOTW/Cookie/
其中有代码:

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

检索以前设置的 cookie(由服务器),但我的服务器没有 HTTP_COOKIE 变量,我还能怎么做呢?
我更愿意继续使用上述指南的方法,但如果有更好的方法我愿意考虑。
否则,我不会使用任何框架(只是原始的 .py 文件)并希望保持这种状态。
干杯

【问题讨论】:

  • 这些是说明 API 的代码片段。 HTTP_COOKIE 是 Cookie 标头的 ,您需要使用适合您的运行时环境(如 cgi-bin 或 wsgi)的任何方法来获取它。
  • 啊,是的,我现在有了:import os; os.environ['HTTP_COOKIE'];
  • 如果您回答自己的问题并接受它,这将是对社区的服务:^)

标签: python cookies http-headers


【解决方案1】:

cmets中讨论的方式是:

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

然后返回一个cookie字典为key -> value

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

显然你会添加错误处理

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

【讨论】:

    猜你喜欢
    • 2022-07-07
    • 1970-01-01
    • 1970-01-01
    • 2015-04-13
    • 2010-09-27
    • 2014-06-10
    • 2022-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多