我正在尝试使用 Oauth 身份验证对 Bitbucket REST API 进行经过身份验证的调用。我已成功检索到一个 oauth_token 和一个 oauth_token_secret(尽管它们与 request_token 和 request_token_secret 相同,这看起来很奇怪但不超出规范)。当我对另一个端点进行 API 调用时,我得到一个 401(未经过身份验证)。我尝试过使用标头身份验证和/或将 oauth_token 和 oauth_token_secret 作为 HTTP 参数传递,结果正常。
这是代码:
account_name_url = 'https://api.bitbucket.org/1.0/user'
feedback_oauth_hook = OAuthHook(
access_token='REDACTED',
access_token_secret='ALSO_REDACTED',
consumer_key=CLIENT_ID,
consumer_secret=CLIENT_SECRET,
header_auth=True
)
params = {
'access_token': auth_tokens['access_token'],
'access_token_secret': auth_tokens['access_secret']
}
response = requests.get(account_name_url, data=params, hooks={'pre_request': feedback_oauth_hook})