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