我正在尝试将 python 字典保存在 cookie 中,然后能够将 cookie 值转换回 jquery 或 javascript 中的 dict。我正在使用 python 3.3.1。我对格式(查询字符串、json 等)感到困惑。
我正在使用这个 jquery cookie 库
https://github.com/carhartl/jquery-cookie
我尝试了以下方法:
服务器端:
import urlib.parse
d= {'key1':'value1','key2':'value2'}
cookie_data = urllib.parse.urlencode(d)
客户端:
cookie_data = $.cookie('Cookie_Name');
var dict = $.parseJson(cookie_data);
这样做的正确方法是什么,所以我最终在客户端得到了一个有效的字典?
我也尝试过使用:
服务器端:
d = {'key1':'value1','key2':'value2'}
cookie_data = json.dumps(d)
这让我得到了字符串中所需的 json 数据。
cookie_data 现在是 '{"key1":"value1","key2":"value2"}'
但是,当我将它作为 cookie 发送时,字符串会像这样出现
"\173\"key2\": \"value2\"\054 \"key1\": \"value1\"\175"
这就是为什么我认为我需要以某种方式对其进行编码。
我也试过:
var cookie_str = $.cookie('My_cookie');
var decoded_cookie = decodeURIComponent(cookie_str);
cookie_str 和 decoded_cookie 都是一样的
\173"key2": "value2"\054 "key1": "value1"\175