request.POST與request.body:
django中的request.POST只能取到Content-Type(請求頭)為application/x-www-form-urlencoded(form表單默認格式)的數據,如果請求頭為application/json(json格式),multipart/form-data(文件)等格式無法取到,只有在request.body里面能取到原生的數據。當發送過來的是JSON數據是,request.POST取到的數據是空的,這時只有用request.body取,再反序列化才能使用。
#post請求中需要傳遞的數據
info= json.dumps({'a':{'id':1,'idc':'北京'},},ensure_ascii=flase) #支持中文
data = info
#如果想傳字典,要轉為json字符串序列化。request.post找不到,要從request.body里看看
HTTP協議:
請求首行:
請求方式、url路徑、HTTP協議版本
請求頭:
常見的請求頭有:
Content-Type:文本的數據類型
User-Agent:產生請求的瀏覽器類型
Host:發送請求的主機名
Accept:返回的數據格式
Server、Cookie等等。
請求體:
常見的請求方式:get、post、put、delete等