7.21 更新日志:YuriWiki 开放 API 了

7.21 更新日志:YuriWiki 开放 API 了

Wiki 搭好之后,有个想法一直拖着没做:把数据开放出去。不是有人催,纯粹是觉得 wiki 的内容如果只躺在网页里,有点浪费。如果别人想在自己的工具、小程序或者博客里引用词条内容,得有个方便的路子。

所以这周把 API 搓出来了。两个接口,搜索和查单条,JSON 返回,CORS 已开。地址在 wiki.yuri.fan,直接调就行。


🔍 能做什么

目前只放了两个接口,不多,但够用。

搜索词条:传一个关键词,返回匹配的词条列表。匹配范围包括标题、正文、标签和别名。也就是说,你搜"终将成为你",或者搜它的日文名"やがて君になる",都能命中。

请求地址:

GET https://wiki.yuri.fan/?page=api&action=search&q=百合

获取单条词条:通过 slug 拿某个词条的完整信息,包括正文、信息框、标签、别名、浏览量这些。

请求地址:

GET https://wiki.yuri.fan/?page=api&action=article&slug=yuri

两个接口都是 GET,参数简单,返回格式统一。状态码也做了规范:200 成功,400 参数错了,404 词条不存在,500 服务器抽风。


💡 可以怎么用

我想到的几个场景:

· 第三方搜索:在自己的站点或工具里嵌入 YuriWiki 的词条搜索,不用跳转到 wiki 也能查资料。

· 数据引用:写博客或做视频时,想自动拉取某个词条的简介和信息框,直接调接口就行。

· 小程序 / App:如果以后有人想给 YuriWiki 做移动端,API 是第一步。

· 机器人:群里的问答机器人,收到"查一下终将成为你",调接口返回词条内容。

当然,这些只是我能想到的。API 放出去之后,怎么用取决于你们。


📋 返回示例

搜索接口返回的是数组,每条包含 id、标题、副标题、slug、正文摘要、标签、信息框、浏览量和更新时间。

单条接口返回的是对象,字段更全,多了 aliases(别名)这一项。

具体字段和格式,完整的文档放在 doc.wiki.yuri.fan/#api,这里不重复贴了。


⚠️ 几个注意点

· 目前没有做频率限制,但请合理使用。如果后面发现被刷,可能会加限流。

· 返回的正文是 Markdown 格式,如果你要在网页上直接展示,需要自己渲染。

· 信息框是 JSON 字符串,解析时注意转义。


🔮 后面还会加什么

短期想补一个分类列表接口,按分类拉取词条。中期可能加随机词条最近更新这类辅助接口。长期的话,如果社区有需求,可以考虑开放编辑接口——不过那得等权限体系和审核机制更完善之后。

API 是 wiki 的延伸。词条内容是人写的,接口是让这些内容更容易被找到的。希望这个小小的开放,能让 YuriWiki 的数据活起来,而不只是躺在数据库里。

如果你用 API 做了什么东西,欢迎告诉我。我很想看。

标签: API, YuriWiki, 更新日志