[英]Curl post works but Python Requests post doesn't, gives 401 Unauthorized
我可以這樣做 Curl:
curl -X POST -k --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{"grant_type":"password","username":"admin","password":"admin"}' 'https://<ip_address>/api/fdm/v3/fdm/token'
並從我正在處理的防火牆 API 獲取訪問令牌。 但我正在嘗試使用請求使其在 Python 中工作:
headers = {
"Content-Type": "application/json",
"Accept": "application/json"
}
payload = {
"grant_type": "password",
"username": "admin",
"password": "admin"
}
r = requests.post('https://<ip_address>/api/fdm/v3/fdm/token', headers=headers, data=payload, verify=False)
我得到一個 401 Unauthorized。 我還嘗試將我的有效負載轉換為 json 並在我的 requests.post 中執行json=payload
但得到相同的結果。 我究竟做錯了什么? curl 是否發送一些默認的 header 信息我不包括在我的請求中? 謝謝!
您需要對requests.post
使用json
參數。 你在那里做的是發送一個表單數據請求。
就像是:
r = requests.post('https://<ip_address>/api/fdm/v3/fdm/token', headers=headers, json=payload, verify=False)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.