请问个 Django 设置 cookie 的问题。

2015-07-22 11:11:50 +08:00
 Anybfans

昨天问了。没人回答。无奈还是没法解决,又来请教了。先谢谢!。

具体代码如上:
1.cookie的key为 user_bind_id。 value 的值为school_detail. 学校信息中包含中文,但是这个中文的编码是unicode,不管是否对school_detail.encode('utf-8'),都会在设置cookie时生成类似的cookie

4781612===="\347\275\227\345\261\261\345\216\277\347\254\254\344\270\200\345\256\236\351\252\214\345\260\217\345\255\246|102\347\217\255"

请问要如何才能在前台让这个value值显示正常。正常信息类似于 xxx县实验小学|102班

1900 次点击
所在节点    问与答
6 条回复
Anybfans
2015-07-22 11:12:08 +08:00
zjgsamuel
2015-07-22 11:22:14 +08:00
目测UTF转换了 影响读取么? cookie是啥管它呢 逃...
Anybfans
2015-07-22 11:25:16 +08:00
@zjgsamuel 用Js读出来的时候这个\347\275\227\345\261\261\345\216\277\347\254\254\344\270\200\345\256\236\351\252\214\345\260\217\345\255\246|102\347\217\255
没办法正常使用呀。不太懂前端 不知道怎么进行编码。找了一早上还是找不出来结果
MrGba2z
2015-07-22 11:31:53 +08:00
你先换成英文的看正不正常
正常的话估计就是编码的锅了
Anybfans
2015-07-22 11:36:06 +08:00
@MrGba2z 设置成英文是可以的。。我这里直接 return response = HttpResponse(school_detail) 前台收到的值就是正常的汉字。
但是存成cookie就出问题。。
Anybfans
2015-07-22 14:06:31 +08:00
看了一下是
response.set_cookie(str(user_bind_id), school_detail, path='/', max_age=None)
时对字符串进行了编码 编码成str格式了。可是不知道怎么在前台解码。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/207446

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX