Skip to content
pollybird edited this page Sep 12, 2026 · 2 revisions

REST 内容 API

REST 内容 API

前缀 /api/v1,只读端点,供小程序/Headless 前端消费。

配置与鉴权

  • 总开关(api_enable):关闭后所有端点返回 404。
  • 鉴权模式(api_auth_mode,v2.6.3):token(仅 X-API-Token)/ jwt(仅 Bearer JWT)/ both(默认,优先 JWT 回退 Token)。
  • 静态 Token(api_token):非空时要求请求头 X-API-Token。
  • JWT 鉴权(v2.6.3):POST /api/v1/auth/login 用用户名密码换取 access_token(15min)+ refresh_token(7d),请求头 Authorization: Bearer <access_token>;POST /api/v1/auth/refresh 用 refresh_token 换新 access_token;POST /api/v1/auth/logout 客户端删除 token。
  • 速率限制(v2.6.3,api_rate_limit_enable):登录 5 次/分钟、只读 GET 120 次/分钟,超限返回 429。
  • CORS(api_cors_origins):* 或逗号分隔域名。
  • 缓存 TTL(api_cache_ttl):默认 300 秒。

统一响应格式

`{
  "code": 0,        // 0=成功
  "message": "ok",  // 错误时为中文说明
  "data": ...,      // 成功数据
  "meta": {...}     // 列表分页信息
}`

核心端点

端点 说明
GET /api/v1/columns 栏目导航树
GET /api/v1/columns/ 栏目详情
GET /api/v1/columns//articles 栏目文章分页(page/per_page/keyword)
GET /api/v1/articles/ 文章详情(含 prev/next)
GET /api/v1/banners/ 轮播图分组(banner 插件)
GET /api/v1/columns//products 产品列表(product 插件)
GET /api/v1/products/ 产品详情(product 插件)
POST /api/v1/auth/login JWT 登录,返回 access/refresh token(v2.6.3)
POST /api/v1/auth/refresh 刷新 access_token(v2.6.3)
POST /api/v1/auth/logout 登出(客户端删除 token)(v2.6.3)

第三方插件开发时把端点挂在核心 api_bp(get_api_routes(api_bp) 钩子),自动享受总开关、鉴权、CORS、缓存与审计。

Clone this wiki locally