webapp2不完整的cookie检索

时间:2013-06-28 03:48:37

标签: javascript python cookies http-headers webapp2

在cookie检索之前,打印标题(在服务器端,使用Python)会产生,只显示“Cookie”部分:

'Cookie': 'clist={%22config_dict%22:{%22OSLO%22:{%22cstate%22:%22EXP%22}}%2C%22table_order%22:[%22OSLO%22]}'

但是,在clist_str = self.request.cookies.get('clist')和打印clist_str之后,Cookie值会被切断:

{%22config_dict%22:{%22OSLO%22:{%22cstate%22:%22EXP%22}}%2C%22table_order%22:

为了便于阅读,为了它的价值,预期的cookie值为:

{"config_dict":{"OSLO":{"cstate":"EXP"}},"table_order":["OSLO"]}

但我们得到了

{"config_dict":{"OSLO":{"cstate":"EXP"}},"table_order":

代替。

关于如何解决这个问题的任何想法?完整的cookie位于请求标头中,但webapp2似乎无法正确检索cookie。作为旁注,可以使用JavaScript设置cookie并在客户端成功获取。

1 个答案:

答案 0 :(得分:1)

Cookie是URL编码的。试试这个:

import urllib
clist_str = urllib.unquote(clist_str)

如果cookie仍被截断,则可能是webapp2中的错误。它似乎在方括号上打破:[]。您可能必须直接从标头中提取cookie,而不是使用cookies属性。