字典和json字符串(本質也是字符串)之間的轉化用json.dumps和json.loads()
json.dumps(): 字典→json字符串
json.loads(): json字符串→字典
字符串和字節串之間的轉化用encode()和decode()
encode(): 字符串→字節串
decode(): 字節串→字符串
所以這三種類型的數據可以通過字符串這個中間量進行轉化,達到字典和字節串的互相轉化。
例如注冊頁面,前端通過post方式向后端發送請求,后端從request.body里拿數據,這里拿到的數據本質類型是字節串
python3.6.8的可以直接用json.loads()把字節串直接轉為字典,再從字典里拿對應的信息
python3.5.2就不行,必須要把字節串先轉為字符串,再才能字符串變為字典
舉個栗子看一下,只是部分代碼,python版本為3.6.8:
if request.method == 'POST': #注冊 json_str = request.body if not json_str: result = {'code':202, 'error': 'Please POST data!!'} return JsonResponse(result) #如果當前報錯,請執行 json_str = json_str.decode() json_obj = json.loads(json_str) username = json_obj.get('username') email = json_obj.get('email') password_1 = json_obj.get('password_1') password_2 = json_obj.get('password_2')