在Python瓶子应用程序中读取cookie文本值

在Python瓶子应用程序中读取cookie文本值,python,cookies,bottle,Python,Cookies,Bottle,我试图弄清楚cookies在Python应用程序中是如何工作的。请善待我,因为我对Python还很陌生。如何从已设置的cookie中读取值 例如: @route('/cookie_setpage/') def settingcookie(): response.set_cookie('Cookie_name','Some value') return 'Set!' @route('/cookie_readpage/') def testingcookie(): r=re

我试图弄清楚cookies在Python应用程序中是如何工作的。请善待我,因为我对Python还很陌生。如何从已设置的cookie中读取值

例如:

@route('/cookie_setpage/')
def settingcookie():
    response.set_cookie('Cookie_name','Some value')
    return 'Set!'

@route('/cookie_readpage/')
def testingcookie():
    r=request.get_cookie('Cookie_name')
    return str(r)
当我这样做时,我得到文本“None”作为返回,它似乎是默认值或其他东西。我该如何从使用
get\u cookie
获得的cookie中访问文本“Some value”?

您的解决方案 如果未指定路径,
瓶子
不会随cookie一起发送路径,这意味着浏览器负责决定将哪个路径用于cookie(出于某种原因,瓶子文档声明了其他内容)

(如果您不知道路径是什么,请阅读此答案中的其他标题)

(搜索“解释集Cookie”)表示,Cookie的默认路径是生成Cookie的路径(在您的情况下)

这当然意味着cookie没有被发送到
/cookie\u readpage

要解决此问题,只需在设置cookie时定义一个路径:

response.set_cookie('Cookie_name','Some value', path='/')  # Your entire site.
什么是cookie路径? 路径是cookie的一个属性

浏览器将只向cookie路径“下方”的页面发送cookie

因此,如果您将cookie路径设置为
/cookie\u setpage
,则
/cookie\u setpage/cookie\u readpage
会获取cookie,但
/cookie\u readpage
不会

如果您将其设置为
/
,则任何页面都会得到它,因为它是您站点的根。

非常感谢:)我不知道这一点!解决了的!