如何为经过身份验证的 API GET 请求设置请求 header

How to set up a request header for an Authenticated API GET request

我正在尝试向 API 发出经过身份验证的 GET 请求。这是我第一次尝试使用 Python 的 request 库。我查看了与此类似的帖子,但它们似乎过于笼统而无法回答我的问题。他们的回答几乎适用于我处理过的所有其他案例,所以感觉有点卡住了。

请求 header 相当长:

':authority': 'api-WEBSITE.com',
':method': 'GET',
':path': 'ENDPOINT',
':scheme': 'https',
'accept': 'application/json',
'accept-encoding': 'gzip, deflate, br',
'accept-language': 'en-US,en;q=0.9',
'authorization': 'AUTH_TOKEN', 
'content-type': 'application/json',
'cookie': 'VERY_LONG_COOKIE',
'origin': 'https://WEBSITE.com',
'referer': 'https://WEBSITE.com/app',
'user-agent': 'LIST_OF_BROWSERS'

我发出此请求的代码:

import requests

requestURL = "https://api-WEBSITE.com/ENDPOINT"

parameters = {
    ':authority': 'api-WEBSITE.com',
    ':method': 'GET',
    ':path': 'ENDPOINT',
    ':scheme': 'https',
    'accept': 'application/json',
    'accept-encoding': 'gzip, deflate, br',
    'accept-language': 'en-US,en;q=0.9',
    'authorization': 'AUTH_TOKEN', 
    'content-type': 'application/json',
    'cookie': 'VERY_LONG_COOKIE',
    'origin': 'https://WEBSITE.com',
    'referer': 'https://WEBSITE.com/app',
    'user-agent': 'LIST_OF_BROWSERS'
}

response = requests.get(requestURL, parameters)

print(response.status_code)

当我 运行 执行此操作时,我收到一个 401 状态代码,要求进行身份验证;但是,我似乎无法找出引发此 401 错误的原因。

要为 python 请求提供 headers:您必须这样做 r = requests.get(url, headers = headersDict)

其中 headersDict 是您要添加到请求

的 headers 的有效字典