Requests 定制請求頭

2022-06-27 14:27 更新

如果你想為請求添加 HTTP 頭部,只要簡單地傳遞一個(gè) dict 給 ?headers? 參數(shù)就可以了。

例如,在前一個(gè)示例中我們沒有指定 content-type:

>>> url = 'https://api.github.com/some/endpoint'
>>> headers = {'user-agent': 'my-app/0.0.1'}

>>> r = requests.get(url, headers=headers)

注意: 定制 ?header? 的優(yōu)先級低于某些特定的信息源,例如:

  • 如果在 ?.netrc? 中設(shè)置了用戶認(rèn)證信息,使用 headers= 設(shè)置的授權(quán)就不會生效。而如果設(shè)置了 auth= 參數(shù),``.netrc`` 的設(shè)置就無效了。
  • 如果被重定向到別的主機(jī),授權(quán) ?header? 就會被刪除。
  • 代理授權(quán) ?header? 會被 URL 中提供的代理身份覆蓋掉。
  • 在我們能判斷內(nèi)容長度的情況下,?header? 的 ?Content-Length? 會被改寫。

更進(jìn)一步講,Requests 不會基于定制 ?header? 的具體情況改變自己的行為。只不過在最后的請求中,所有的 ?header? 信息都會被傳遞進(jìn)去。

注意: 所有的 ?header? 值必須是 string、bytestring 或者 unicode。盡管傳遞 unicode header 也是允許的,但不建議這樣做。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號