API 文档
文风字库提供 RESTful API,支持字体查询、分类浏览等功能
基础 URL
/api响应格式
所有 API 响应均为 JSON 格式,包含以下字段:
{
"code": 200,
"message": "success",
"data": { ... }
}认证鉴权
API 使用密钥认证机制来管理访问权限和配额
虽然大部分 GET 接口支持匿名访问,但会受到严格的速率限制(默认 100 次/天)。 建议申请 API 密钥以获得更高的调用配额。
白名单免密钥访问
当请求域名被加入白名单后,可免 API Key 访问字体 API,且不计入日配额。 白名单需完全匹配域名(仅匹配 hostname),由管理员统一配置。
- 域名匹配:仅匹配规范化后的 hostname,不支持通配符
- 请求要求:需携带 Origin 头(浏览器发起的跨域/同域请求通常会自动携带)
- 日配额:不消耗日配额
- 分钟限流:默认 600 次/分钟,可通过
WHITELIST_PER_MINUTE_LIMIT调整
认证方式
您可以通过以下两种方式之一传递 API 密钥:
Header 方式 (推荐)
Authorization: Bearer wf_live_...- 或 -
X-API-Key: wf_live_...Query 参数方式
?apiKey=wf_live_...字体接口
获取和管理字体信息
GET
/api/fonts获取字体列表,支持分页和筛选
查询参数:
page- 页码(默认:1)size- 每页数量(默认:20)category- 分类 IDbrand- 品牌 IDsearch- 搜索关键词sort- 排序方式(name, createdAt, viewCount)
示例请求:
GET /api/fonts?page=1&size=20&category=serif&sort=name
响应示例:
{
"code": 200,
"data": {
"total": 100,
"page": 1,
"pageTotal": 5,
"dataList": [
{
"id": "uuid",
"name": "思源黑体",
"fontFamily": "Source Han Sans",
"category": { "name": "无衬线体" },
"brand": { "name": "Adobe" }
}
]
}
}GET
/api/fonts/:family获取指定字体的详细信息(支持 ID 或字体族名称)
示例请求:
GET /api/fonts/qtxtt
分类接口
获取字体分类信息
GET
/api/categories获取所有字体分类列表
响应示例:
{
"code": 200,
"data": [
{
"id": "uuid",
"name": "无衬线体",
"slug": "sans-serif",
"description": "现代简洁的字体风格"
}
]
}品牌接口
获取字体品牌信息
GET
/api/brands获取所有字体品牌列表