简介
Legado Tauri 是基于 Tauri v2 构建的开源阅读桌面应用。书源系统是其核心功能 —— 通过编写 JavaScript 脚本,你可以为任意网站/API 创建内容适配器,让应用能够搜索、浏览和阅读来自不同来源的书籍、漫画和视频。
什么是书源?
书源是一个 .js 文件,它定义了如何从特定网站抓取内容。每个书源实现以下核心函数:
| 函数 | 作用 | 是否必须 |
|---|---|---|
search(keyword, page) | 搜索书籍 | ⚡ 可选 |
bookInfo(bookUrl) | 获取书籍详情 | ✅ 必须 |
chapterList(tocUrl) | 获取章节目录 | ✅ 必须 |
chapterContent(chapterUrl) | 获取章节正文 | ✅ 必须 |
explore(page, category) | 发现页推荐 | ⚡ 可选 |
运行环境
书源运行在 Boa JS 引擎 上,这意味着:
- 语法:ES5 兼容(
var而非let/const,无箭头函数、无class) - 无浏览器 API:没有
window、document、fetch、XMLHttpRequest - 同步阻塞:所有网络请求都是同步的,无需
async/await - 宿主 API:通过
legado.*命名空间提供 HTTP、DOM、加密等能力
关于 ES5 限制
虽然引擎限制为 ES5,但这反而让书源代码更简单直接。不需要处理 Promise 链或异步流程,一行代码发请求,下一行就能用结果。
书源类型
| 类型 | 元数据标记 | chapterContent 返回值 |
|---|---|---|
| 小说 | (默认) | 纯文本字符串 |
| 漫画 | // @type comic | JSON.stringify(imageUrls) |
| 视频 | // @type video | 播放地址(URL 或 JSON) |