通常,这个问题出现在向 API 发出请求时缺少客户端密钥所导致的。为了在 API 请求中包含客户端密钥,可以在请求头中添加 Authorization 字段,其值为 "Bearer {Access Token}",其中 Access Token 是从授权服务器获取的访问令牌。示例代码如下:
import requests
# 设置 OAuth2 认证所需参数
client_id = "your_client_id"
client_secret = "your_client_secret"
access_token_url = "https://your-auth-server/token"
api_endpoint = "https://api.example.com/"
# 获取 Access Token
response = requests.post(access_token_url, data={
"grant_type": "client_credentials",
"client_id": client_id,
"client_secret": client_secret
})
access_token = response.json()["access_token"]
# 向 API 发出请求
response = requests.get(api_endpoint, headers={
"Authorization": f"Bearer {access_token}"
})