[英]Why does the requests library add extra headers to the ones I set?
當我設置以下自定義標頭時,我嘗試使用請求庫在python上進行發布請求:
User-Agent: MBAM-C
Content-Type: application/json
Authorization: True
Content-Length: 619
Connection: Close
但是,當它使用自定義標頭發送請求時,它會添加自己的標頭,從而導致服務器的請求響應不正確。
User-Agent: MBAM-C
Accept-Encoding: gzip, deflate
Accept: */*
Connection: Close
Content-Type: application/json
Authorization: True
Content-Length: 559
這是由於請求項目的設計目標所致。
此行為在此處記錄 。 如果該庫需要更正內容長度或添加所需的標頭,則可能需要使用較低級別的庫。 要求帳單本身為:“一個為人類而建的優雅而簡單的Python HTTP庫。” 廣告的一部分是它可以接受壓縮內容和所有mime類型。
注意: 自定義標頭的優先級低於更具體的信息源 。 例如:
如果在.netrc中指定了憑據,則將覆蓋標有headers =的授權標頭,而auth =參數將覆蓋該標頭。 如果您脫離主機重定向,則將刪除授權標頭。 URL中提供的代理憑證將覆蓋Proxy-Authorization標頭。 當我們可以確定content的長度時,Content-Length標頭將被覆蓋 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.