产品 能力 研究 案例 功能中心 工具箱 定价 文档 FAQ 合规 加入我们 关于 联系我们 登录注册
API Reference

正式API 文档

基于实际运行后端的接口文档。所有示例均来自线上真实响应,接口路径与字段以本文档为准。

1. 接口总览

所有接口基于 JSON 传输,编码为 UTF-8。生产环境基地址:https://riaby.6661003.xyz(本地联调为 http://localhost:8100)。

接口方法鉴权说明
/api/articlesGET无需获取公开文章列表
/article/<slug>GET无需文章详情页(HTML)
/api/articlePOST需服务端授权创建文章
/api/article/deletePOST需服务端授权按 id 删除文章
/api/contactPOST无需(带防滥用)提交联系留言
/api/messagesGET需服务端授权获取最近留言(管理用途)
/adminGET需服务端授权管理后台页面

请求与响应示例中的 JSON 与字段均与线上返回一致。写操作接口(创建/删除文章、留言)需要按服务端配置的授权机制调用,未授权请求会返回 403 或 401。

2. 获取文章列表

返回全部可见文章的元数据列表,按发布日期倒序排列。

GET/api/articles
AUTH: 无需鉴权

请求示例:

curl https://riaby.6661003.xyz/api/articles

响应示例(HTTP 200):

[
  {
    "id": 3,
    "slug": "v3",
    "title": "RiaBy Brain V3 决策引擎设计公开",
    "tag": "产品动态",
    "summary": "介绍 V3 风险评分模型与处置建议生成的设计思路……",
    "date": "2026-08",
    "read_min": "7 分钟"
  },
  {
    "id": 1,
    "slug": "c2",
    "title": "警惕针对公开服务的新型 C2 信标伪装",
    "tag": "威胁情报",
    "summary": "近期观测到攻击者将命令控制流量伪装为常规业务请求……",
    "date": "2026-10",
    "read_min": "6 分钟"
  }
]

3. 获取文章详情

通过 slug 获取文章详情页。命中数据库记录时渲染动态模板;存在同名静态页时返回静态页;均不存在时返回 404 页面。

GET/article/<slug>
AUTH: 无需鉴权

请求示例:

curl https://riaby.6661003.xyz/article/c2

响应:

  • HTTP 200:返回渲染后的文章 HTML 页面;
  • HTTP 404:返回 404 页面(文章不存在或已下架)。

4. 创建文章

写入一篇新文章。请求体为 JSON,字段如下。

POST/api/article
AUTH: 需服务端授权(未授权返回 401/403)
参数类型必填说明
titlestring是文章标题,不能为空
slugstring否文章唯一标识,缺省自动生成
tagstring否分类标签,默认"威胁情报"
summarystring否摘要
contentstring否正文 HTML
datestring否发布日期,格式 YYYY-MM,默认当前月份
read_minstring否阅读时长,默认"5 分钟"

请求示例:

curl -X POST https://riaby.6661003.xyz/api/article \
  -H "Content-Type: application/json" \
  -d '{"title":"新文章标题","slug":"demo","tag":"威胁情报","summary":"摘要内容","content":"<p>正文</p>"}'

响应示例(HTTP 200):

{"ok": true}

5. 删除文章

按文章 id 删除记录。

POST/api/article/delete
AUTH: 需服务端授权

请求示例:

curl -X POST https://riaby.6661003.xyz/api/article/delete \
  -H "Content-Type: application/json" \
  -d '{"id": 3}'

响应示例(HTTP 200):

{"ok": true}

6. 提交联系留言

联系页表单使用的接口,同时支持 JSON 与表单编码提交。

POST/api/contact
AUTH: 无需鉴权(服务端有频率与长度限制)
参数类型必填说明
namestring否称呼,最长 50 字符
emailstring否邮箱,最长 100 字符
contentstring是留言内容,最长 2000 字符,不能为空

请求示例:

curl -X POST https://riaby.6661003.xyz/api/contact \
  -H "Content-Type: application/json" \
  -d '{"name":"示例用户","email":"[email protected]","content":"想咨询专业版方案"}'

响应示例(HTTP 200):

{"ok": true}

7. 获取留言列表

管理用途:返回最近 100 条留言,按时间倒序。

GET/api/messages
AUTH: 需服务端授权,禁止对外直接开放

响应示例(HTTP 200):

[
  {"id": 12, "name": "示例用户", "email": "[email protected]", "content": "想咨询专业版方案", "created_at": "2026-10-22 10:00:00"}
]

8. 管理后台

文章与留言的管理页面,仅供授权管理员访问。

GET/admin
AUTH: 需服务端授权(应置于网关白名单 / 内网之后)

响应:HTTP 200 返回管理后台 HTML 页面;未授权访问由前置层拦截。

9. 错误码

接口统一使用 HTTP 状态码表达结果;业务失败时返回 {"ok": false, "error": "..."}。

状态码场景响应体示例
400创建文章缺少 title{"ok": false, "error": "标题不能为空"}
400创建文章 slug 冲突{"ok": false, "error": "slug 已存在,请更换"}
400留言 content 为空{"ok": false, "error": "留言内容不能为空"}
401 / 403写操作未授权由服务端授权层返回
404文章详情不存在返回 404 页面
405方法不允许(如对 GET 接口发 POST)由框架默认返回
500服务端内部错误请保留请求参数并联系我们排查

10. 限制与约定

  • 所有响应均为 UTF-8 编码 JSON(页面接口除外);
  • 写操作接口请遵循服务端限流策略,高频调用可能被暂时限流;
  • 管理类接口(/api/messages、/admin、写操作)不对公网直接开放,部署时应置于授权网关之后;
  • 接口路径与字段以本文档为准,如遇变化会同步更新文档并标注变更日期。

接入遇到问题?

接口联调、权限开通或商务合作,欢迎直接联系我们。

联系我们 常见问题