python+request 發送post請求:msg返回"Content type 'application/octet-stream' not supported"
一、問題源代碼:
1、代碼:
1 import requests 2 import json 3 url = "http://47.106.203.20:8000/ssposs2/api/auth/login" 4 par = { 5 "account":"ceshi", 6 "pwdMd5":"e10adc3949ba59abbe56e057f20f883e" 7 } 8 r = requests.post(url,data=json.dumps(par))#因為請求傳送的參數是josn格式,所以這里要用到json.dumps() 9 print(r.text)#請求返回內容 10 print(r.status_code)#請求返回狀態
2、運行結果:
1 {"result":false,"msg":"Content type 'application/octet-stream' not supported","code":"E1000","data":null} 2 200
二、post請求一般有4種請求,分別是:
1、application/x-www-form-urlencoded瀏覽器原生表單
2、multipart/form-data
3、application/json
4、text/xml文本格式
所以需要加上請求內容類型Content-Type: XXXXX
三、修改后代碼和運行結果
1、代碼:
import requests import json url = "http://47.106.203.20:8000/ssposs2/api/auth/login" par = { "account":"ceshi", "pwdMd5":"e10adc3949ba59abbe56e057f20f883e" } r = requests.post(url,data=json.dumps(par),headers={'Content-Type':'application/json'}) print(r.text)#請求返回內容 print(r.status_code)#請求返回狀態
2、運行結果:
{"result":true,"msg":null,"code":null,"data":"login success. "} 200