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}")