Python Requests post方法中data與json參數問題


1.data參數

你想要發送一些編碼為表單形式的數據——非常像一個 HTML 表單。要實現這個,只需簡單地傳遞一個字典給 data 參數。你的數據字典在發出請求時會自動編碼為表單形式,header默認Content-Type: application/x-www-form-urlencoded

發送過來的抓包到的數據格式為:'username=amy&password=123'

如果你傳遞一個 string 而不是一個 dict,那么數據會被直接發布出去,不會被編碼為表單形式

例如傳'{"username": "amy", "password": "123"}',直接發出去,抓包的內容也是'{"username": "amy", "password": "123"}'

2.json參數

還可以使用 json 參數直接傳遞,然后它就會被自動編碼,header默認'Content-Type': 'application/json'

json發送過來的數據格式為:{"username": "amy", "password": "123"}

3.實際場景中如何使用

1)對頁面接口抓包,如果Content-Type:application/json,則限制接受json格式,requests中可用json方法,

或者使用data方法,headers加'Content-Type': 'application/json',postdata傳string格式,不會自動編碼格式

2)對頁面接口抓包,Content-Type:application/x-www-form-urlencoded; charset=UTF-8,則可使用data方法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM