阅读Sigma Web服务与API完全指南:如何远程管理书源与一键导入
【免费下载链接】legado-E阅读Sigma是legado的继承,保持开源免费,延续开源精神。项目地址: https://gitcode.com/gh_mirrors/legado2/legado-E
阅读Sigma(legado-E)是一款开源免费的 Android 阅读应用,其内置的Web 服务让你不用碰手机屏幕,就能通过浏览器或脚本远程管理书源、批量导入订阅源、拉取正文内容。本文带你从零开启 Web 服务,并附完整 API 接口清单 📚
什么是阅读Sigma的Web服务
开启后,App 会在手机上起一个本地 HTTP 服务器(默认端口1234),并提供一个长连接 WebSocket 服务(端口1235),对外提供:
- 📥书源管理:插入 / 查询 / 删除书源与 RSS 订阅源
- 📖书籍操作:获取书架、目录、正文、封面、保存阅读进度
- 🔄替换规则:增删改查与在线测试
- 🐞调试通道:搜索书籍、书源调试、订阅源调试(WebSocket)
核心实现位于 web 服务目录,接口文档可参考项目根目录的 api.md。
如何开启Web服务(3步上手)
- 打开 App,进入底部「我的」页面(入口代码见 MyFragment.kt)
- 找到「Web 服务」开关并打开,服务即由 WebService.kt 在后台启动
- 在电脑浏览器访问
http://手机IP:1234/验证连通性(同一局域网内即可)
💡 小技巧:支持锁屏保活唤醒配置,可搜索webServiceWakeLock相关偏好项;远程访问时把文档里的127.0.0.1换成手机 IP 即可。
完整API接口清单
以下接口默认前缀为http://手机IP:1234,实现分布在 BookSourceController.kt、BookController.kt 等控制器中。
书源与订阅源管理
| 功能 | URL | 方法 | 说明 |
|---|---|---|---|
| 插入单个书源 | /saveBookSource | POST | BODY 为单个书源 JSON |
| 批量导入书源 | /saveBookSources | POST | BODY 为书源 JSON数组 |
| 批量导入订阅源 | /saveRssSources | POST | 同上,RSS 版 |
| 获取指定书源 | /getBookSource?url=xxx | GET | 按源地址查询 |
| 获取所有书源 | /getBookSources | GET | 返回全部数据 |
| 批量删除书源 | /deleteBookSources | POST | BODY 为书源 JSON 数组 |
书源 JSON 格式可对照实体定义 BookSource.kt,内置示例见 bookSources.json。
书籍与阅读内容
| 功能 | URL | 方法 | 说明 |
|---|---|---|---|
| 插入书籍 | /saveBook | POST | 启用缓存后可取目录正文 |
| 删除书籍 | /deleteBook | POST | 试读完可清理 |
| 获取书架 | /getBookshelf | GET | 支持多种排序 |
| 获取章节列表 | /getChapterList?url=xxx | GET | 缓存为空时自动刷新 |
| 获取正文 | /getBookContent?url=xxx&index=1 | GET | index为章节序号 |
| 获取封面 | /cover?path=xxx | GET | 默认封面示意如下图 |
| 获取正文图片 | /image?url=&path=&width= | GET | 支持指定宽度 |
| 保存阅读进度 | /saveBookProgress | POST | 格式见 BookProgress.kt |
替换规则管理
| 功能 | URL | 方法 |
|---|---|---|
| 获取全部规则 | /getReplaceRules | GET |
| 新增规则 | /saveReplaceRule | POST |
| 删除规则 | /deleteReplaceRule | POST |
| 在线测试规则 | /testReplaceRule | POST |
规则结构参考 ReplaceRule.kt,测试接口传入rule+text即可返回替换结果,非常适合写脚本批量清洗内容。
WebSocket 实时通道
| 功能 | 地址 | 消息格式 |
|---|---|---|
| 搜索在线书籍 | ws://手机IP:1235/searchBook | { key: "关键词" } |
| 书源调试 | ws://手机IP:1235/bookSourceDebug | { key, tag } |
| 订阅源调试 | ws://手机IP:1235/rssSourceDebug | { key, tag } |
实现分别位于 BookSearchWebSocket.kt 等文件中。
一键导入书源的最快姿势
想让电脑上的书源库"秒上"手机?只需两条命令思路:
GET http://手机IP:1234/getBookSources → 先看现有书源 POST http://手机IP:1234/saveBookSources → BODY 粘贴书源JSON数组,批量入库批量导入时控制器会逐个校验源名称和 URL 非空,合法源全部写入数据库并回传成功列表,实现真正意义上的"一键导入" ⚡
Vue3 Web端:浏览器里看书、编源
除了裸 API,项目还内置了一套 Vue3 前端,位于 modules/web 目录(说明见 modules/web/README.md):
- 📖Web 书架:
/#/路由打开书架,在线阅读界面由 BookShelf.vue 与 BookChapter.vue 构成 - ✍️书源编辑器:
/#/bookSource路由,可视化编辑书源规则(SourceEditor.vue) - 📡订阅源编辑器:
/#/rssSource路由管理 RSS 源 - 🐞在线调试:内置 SourceDebug.vue 通过 WebSocket 实时调试书源
浏览器兼容 Edge ≥ 85、Chrome ≥ 85、Firefox ≥ 79、Safari ≥ 14.1,日常在 PC 上维护书源库非常顺手。
Content Provider:安卓应用间的数据桥梁
除了 HTTP,阅读Sigma 还提供 ReaderProvider.kt,允许其他安卓应用直接读写书源、书籍、目录与正文:
- 需声明
io.legado.READ_WRITE权限 providerHost为包名.readerProvider(如io.legado.app.release.readerProvider)- 典型用法:
content://providerHost/bookSources/query获取全部书源
适合想在自己的 App 里集成"阅读"能力的开发者。
安全注意事项
- 🔒 Web 服务默认只对局域网开放,公网环境请谨慎暴露,避免他人增删你的书源与书籍
- 删除类接口(
deleteBookSources、deleteBook)操作不可逆,脚本调用前先getBookSources/getBookshelf备份数据 - 试读流程:先
saveBook启用缓存 → 取目录正文 → 不加入书架则deleteBook清理
掌握以上内容,你已能完整玩转阅读Sigma 的 Web 服务:从开启服务、一键导入书源,到用 API 搭建自己的阅读数据管道。更多细节可翻阅 api.md 与 web 服务目录 的源码注释。
【免费下载链接】legado-E阅读Sigma是legado的继承,保持开源免费,延续开源精神。项目地址: https://gitcode.com/gh_mirrors/legado2/legado-E
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考