(Python)解决将中文存入cookie的错误问题

问题:

最近在开发中遇见一个问题,我想要将中文字符串存入cookie,以便在另一个接口使用,却发现取cookie的时候我想要的东西取不出来,那么就要使用如下方法解决。

解决:

1. 存cookie:

name = "中华小当家"
response = redirect("https://www.zzz.com")
response.set_cookie("name", name.encode('utf-8').decode('latin-1'), max_age=604800)

2. 取cookie:

name_cookie = request.COOKIES.get('nickname', None)
if nickname_cookie:
	nickname = name_cookie.encode('latin-1').decode('utf-8')

测试举例:

# 编码问题
# 中文不能存入cookie
aa = '时间煮雨'
bb = 'stormztt'

# 编码:
result_1 = aa.encode('utf-8').decode('latin-1')
result_2 = bb.encode('utf-8').decode('latin-1')

print("编码后:" + result_1)
print("编码后:" + result_2)

# 解码:
result_a = result_1.encode('latin-1').decode('utf-8')
result_b = result_2.encode('latin-1').decode('utf-8')

print("解码后:" + result_a)
print("解码后:" + result_b)

结果:

编码后:时间ç®é›¨
编码后:stormztt
解码后:时间煮雨
解码后:stormztt



为了更方便的管理自己的学习记录,我以后将在公众号"Python知音阁"分享我的学习记录,学习经验,踩过的坑等等。公众号文章主要方向是:Python基础、Python Django后端(使用Django RESTframework框架)、Linux基础、数据库(MySQL、MongoDB、Redis)、Nginx服务器、Docker容器、搜索引擎ElasticSearch + Kibana + Logstash + cerebro等技术方向。
微信公众号ID: storm-python
名称: Python知音阁

(Python)解决将中文存入cookie的错误问题_第1张图片

你可能感兴趣的:((Python)解决将中文存入cookie的错误问题)