API 参考
客户端
class Client(api_key=None, timeout=30, retry=True)
与 API 交互的主要客户端类。
参数:
api_key(str): 用于身份验证的 API 密钥timeout(int): 请求超时时间(秒)retry(bool): 在失败时启用自动重试
方法
get(endpoint, params=None)
执行 GET 请求。
参数:
endpoint(str): API 端点路径params(dict): 查询参数
返回: 响应对象
异常: 如果 API 返回错误,则抛出 APIError
response = client.get('/users/123')
post(endpoint, data=None)
执行 POST 请求。
参数:
endpoint(str): API 端点路径data(dict): 请求体数据
返回: 响应对象
data = {'name': 'John', 'email': 'john@example.com'}
response = client.post('/users', data=data)
put(endpoint, data=None)
执行 PUT 请求。
参数:
endpoint(str): API 端点路径data(dict): 请求体数据
返回: 响应对象
updates = {'name': 'Jane'}
response = client.put('/users/123', data=updates)
delete(endpoint)
执行 DELETE 请求。
参数:
endpoint(str): API 端点路径
返回: 响应对象
response = client.delete('/users/123')
响应
表示 API 响应。
属性:
status_code(int): HTTP 状态码data(dict): 响应体数据headers(dict): 响应头
方法
json()
将响应解析为 JSON。
返回: 解析后的 JSON 数据
异常
APIError
当 API 返回错误时触发。
NetworkError
当发生网络错误时触发。
AuthenticationError
当身份验证失败时触发。
RateLimitError
当超过速率限制时触发。
常量
API_BASE_URL
API 请求的基本 URL。
API_BASE_URL = 'https://api.example.com'
API_VERSION
当前 API 版本。
API_VERSION = 'v1'
示例
初始化
from your_package import Client
client = Client(api_key='your-key')
获取资源
response = client.get('/users/123')
if response.status_code == 200:
print(response.data)
创建资源
data = {'name': 'John', 'email': 'john@example.com'}
response = client.post('/users', data=data)
错误处理
try:
response = client.get('/users/123')
except APIError as e:
print(f"错误:{e}")