在python中构建用于请求的请求头的正确方法是什么?
标头的格式必须为:
"授权:不记名。。。。令牌"哪里代币是从先前进行的OATH请求中获得的变量。
我试过了:
auth_token_string = "Bearer "+token
api_headers = {}
api_headers["Authorization"] = auth_token_string
api_headers["x-api-key"] = "randomjazzhere"
api_headers["accept"] = "application/json"
print(api_headers)
result = requests.get(api_call_url, headers=api_headers)
result_json = result.json()
something = result.text
print(something)
它打印的似乎是正确格式化的头,但调用失败,而且api并没有更具体地说明问题是什么…
HTTP标头区分大小写,并且accept
标头具有小写";a";,我不确定,但试着把它大写为Accept
。还有一个重组代码的建议,比如:
auth_token_string = "Bearer "+token
api_headers = {
"Authorization": auth_token_string,
"x-api-key": "randomjazz",
"Accept": "application/json"
}
print(api_headers)
result = requests.get(api_call_url, headers=api_headers)
result_json = result.json()
something = result.text
print(something)
如果它仍然不起作用,请尝试将x-api-key
中的x也更改为大写(mdn文档提到了大写x,他们也提到了自2012年以来不推荐使用这些(
参考