背景:練習requests 請求的時候向一個網站發起post請求,攜帶的參數為
我已經添加了頭部和數據但是返回是這樣的
這是因為我在寫requests.post(url=url,data=data,headers=headers)這裡寫錯了。
應該是:
response = requests.post(url=url, json=data,headers=headers)
因為要注意的是:
'Content - Type': 'application / json',
於是最後請求成功。
1.傳統的ajax請求時候,Content-Type
默認為"文本"類型。
2.傳統的form提交的時候,Content-Type
默認為"Form"類型。
3.axios傳遞字符串的時候,Content-Type
默認為"Form"類型。
4.axios傳遞對象的時候,Content-Type
默認為"JSON"類型
Content-Type的值,Form與非Form時,payload的區別。
1.都只支持字符串類型(以上探究的幾種情況)
2.Form需要傳遞的格式為key1=value1&key2=value2
,類似GET
請求的QueryString
格式
3.非Form一般為JSON.stringify(formDataObject)
形式
後端取不到值?
無論何種形式傳遞,後端解析表單信息的時候,會考慮Content-Type
。如果是JSON字符串的話,後端解析payload的內容時候,肯定要去解析JSON啦。如果是key1=value1&key2=value2
的形式,則需要去分割字符串。
Similar to human eyes and brai