(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知音閣

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章