Djang中cookie存在性的测试

2024-09-29 10:25:33 发布

您现在位置:Python中文网/ 问答频道 /正文

简单的东西。。。

如果我试着引用Django via的cookie

request.COOKIE["key"]

如果cookie不存在,则会引发密钥错误。

对于Django的GETPOST,因为它们是QueryDict对象,我可以

if "foo" in request.GET

非常复杂。。。

对于不是Try/Catch块的cookies来说,最接近这个的地方是什么呢。。。


Tags: 对象djangokeyingetiffoocookie
2条回答

首先,是

request.COOKIES

不是request.COOKIE。另一个会给你一个错误。

其次,它是一个dictionary(或类似dictionary)对象,因此:

if "foo" in request.COOKIES.keys()

会给你你所需要的。 如果要获取cookie的值,可以使用:

request.COOKIES.get("key", None)

然后,如果没有键"key",您将得到一个None,而不是一个异常。

request.COOKIES是一个标准的Python字典,因此相同的语法也可以工作。

另一种方法是:

request.COOKIES.get('key', 'default')

如果键存在,则返回值,否则返回“default”-您可以将任何您喜欢的内容替换为“default”。

相关问题 更多 >