【问题标题】:python, web.py and setting a cookie on localhostpython、web.py 并在 localhost 上设置 cookie
【发布时间】:2012-03-07 02:37:29
【问题描述】:

我正在尝试使用 localhost 在我的开发机器上设置一个 cookie。下面是我的 web.py 代码。但是,当我在 http://0.0.0.0:8080/ 的 te bowser 中运行代码时,我得到一个页面,但没有设置 cookie。仅供参考主机名--fqdn 等于“ubuntu”。这是我第一次尝试设置 cookie。我也试过 ubuntu,127.0.0.1 以及 doman。

class index:
    def GET(self):
        env = web.ctx['environ']
        qs = urlparse.parse_qs(env['QUERY_STRING'])
        #Set cookie
        web.setcookie('test', "rtb", expires=3600, domain='localhost', secure=False)
        return 'test'

【问题讨论】:

  • PS 我将“0.0.0.0 dev”添加到 /etc/hosts 并使用域 dev 但仍然无济于事

标签: python cookies setcookie


【解决方案1】:

您的示例似乎运行良好。使用 Firebug 我可以很好地看到响应中的 cookie:

test=rtb; Domain=localhost; expires=Wed, 15-Feb-2012 20:08:02 GMT; Path=/

通过他们的方式,尽可能尝试包含代码的完整上下文。我测试了你的 sn-p,因为我知道如何设置一个基本的 web.py 应用程序,该 urlparse 存在于 urllib2 中,等等。但是如果你让人们更容易帮助你,你会得到更多对你的问题的回应。

您可以通过添加类似以下的类来检索 cookie(请记住将其链接到路由列表中的另一个路径):

class cookie:
    def GET(self):
        cookie = web.cookies().get('test')
        return cookie

【讨论】:

  • 谢谢,我在 FF 中看到了 cookie,但没有在文件中设置。所以...我下次访问时无法阅读。当我回到该站点时,我想读取 cookie 以便我可以用它做一些事情。
  • @Tampa:您目前如何检索 cookie?请查看我添加的代码,使用它我能够毫无问题地检索它。
  • cookie = web.cookies().get('test')
  • 使用这个类你叫linke吗? cs = 饼干();打印 cs.GET()
  • @Tampa:对不起,我没有关注你。请澄清。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-12
  • 2017-04-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-17
相关资源
最近更新 更多