插件介绍
这是一个将 Typecho 博客 RESTful 化的插件。启用此插件,你可以通过请求 API 向站点请求或写入信息(获取文章内容、获取评论、添加评论等)。
插件安装
1.常规安装
下载插件并解压,将解压后的目录重命名为 Restful (区分大小写),然后到后台插件管理页面启用并设置即可。
API 使用文档
下面假设您的站点已经开启了地址重写(伪静态);如果没有的话,那么需要在下文列出的请求的 URI 前加上 /index.php,例如:/api/posts => /index.php/api/posts
文章列表
GET /api/posts
参数 | 类型 | 描述 | 备注 |
---|---|---|---|
page | number | 当前页 | 可选 |
pageSize | number | 分页数 | 可选 |
filterType | string | category 或 tag 或 search | 可选 |
filterSlug | string | 分类名或标签名或搜索关键字 | 可选 |
showContent | bool | 是否显示文章具体内容 | 可选 |
页面列表
GET /api/pages
分类列表
GET /api/categories
标签列表
GET /api/tags
文章/页面详情
GET /api/post
参数 | 类型 | 描述 | 备注 |
---|---|---|---|
cid | number | 文章/页面 ID | 二选一 |
slug | string | 文章/页面别名 | 二选一 |
评论列表
GET /api/comments
参数 | 类型 | 描述 | 备注 |
---|---|---|---|
page | number | 当前页 | 可选 |
pageSize | number | 分页数 | 可选 |
order | string | 评论显示顺序(asc/desc) | 可选 |
cid | number | 文章ID | 二选一 |
slug | string | 文章别名 | 二选一 |
PS: 如果带上 Cookie 请求,会显示当前 Cookie 记住的用户所发布的待审核的评论。
最近评论
GET /api/recentComments
参数 | 类型 | 描述 | 备注 |
---|---|---|---|
size | number | 最近评论的条数,默认为 9 | 可选 |
发表评论
POST /api/comment
参数 | 类型 | 描述 | 备注 |
---|---|---|---|
cid | number | 文章ID | 二选一 |
slug | string | 文章别名 | 二选一 |
parent | number | 父级评论 ID | 可选 |
text | string | 评论内容 | 必选 |
author | string | 作者 | 必选 |
string | 邮箱 | 必选 | |
url | string | URL | 可选 |
token | string | 文章/页面详情返回的 token | 必选 |
uid | number | 已注册用户评论时,用户的 UID | 可选 |
authCode | string | 已注册用户评论时,用户的 authCode | 可选 |
PS:此处Content-Type为application/json, 也就是说你应当以 JSON 格式提交数据。
PS2: uid 和 authCode 可以在 Cookie 中找到(形如 hash__typecho_uid 和 hash__typecho_authCode 的内容)。如果直接带上 Cookie 请求此 API 则不再需要带上 uid 和 authCode 参数。请求时需要带上合法的 User-Agent.设置项
GET /api/settings
用户信息
GET /api/users
参数 | 类型 | 描述 | 备注 |
---|---|---|---|
uid | number | 用户ID | 可选 |
name | string | 用户的用户名或昵称 | 可选 |
归档
GET /api/archives
PS:默认按从新到旧 (desc) 顺序排列文章
参数 | 类型 | 描述 | 备注 :-: | :-: | :-: | :-: showContent | bool | 是否显示文章内容 | 可选 | order | string | 归档的排序方式 (asc / desc) | 可选 |其它设置
自定义 URI 前缀
默认情况下 Restful 插件会占用 /api/* 用于不同的接口。如果该 URI 有其它用途,或与其它插件冲突,或者由于某些不可描述的原因用户不希望暴露该接口,可以选择通过修改 config.inc.php 自定义前缀。例如,在 config.inc.php 文件中加入下列内容:
define('__TYPECHO_RESTFUL_PREFIX__', '/rest/')
重新启用插件,此时你可以通过 /rest/* 访问相关 API.
4 comments
在哪里下载呢
点个赞
有没有发布和更新文档的post?
插件哪里下载?