API需要设置回调URL,获取授权码后,用授权码和API秘钥向API服务器请求访问令牌,再将令牌作为参数访问API。
代码示例:
import requests
import json
# 设置API授权信息
api_key = 'your_api_key'
api_secret = 'your_api_secret'
callback_url = 'http://your_callback_url'
# 获取授权码
response = requests.get('https://api.example.com/oauth/authorize', params={
'client_id': api_key,
'redirect_uri': callback_url,
'response_type': 'code'
})
# 获取访问令牌
auth_code = 'your_auth_code'
response = requests.post('https://api.example.com/oauth/token', data={
'grant_type': 'authorization_code',
'client_id': api_key,
'client_secret': api_secret,
'redirect_uri': callback_url,
'code': auth_code
})
access_token = json.loads(response.text)['access_token']
# 访问API
response = requests.get('https://api.example.com/data', headers={
'Authorization': 'Bearer ' + access_token
})
data = json.loads(response.text)