所有人都可以调用相关的接口,接口不做任何身份验证。仅供大家开发交流使用。
开放的接口会对针对IP的访问次数和频次有所限制,如果需要无限制使用或有任何疑问可以通过以下方式联系我
Telegram: https://t.me/yuenov
Gmail: [email protected]
注意:不要抓包使用阅小说App内的接口,阅小说App内的接口专属阅小说App使用 接口使用客户端内算法动态加密,生成的密钥有时效性限制。
阅小说App下载地址:
HTTP的域名为 http://yuenov.com
国内运营商偶尔会屏蔽80端口所以建议不要使用80端口进行访问
目前除了80端口还开放了15555 16666 17777 18888 19999这几个端口,强烈建议使用这几个端口进行访问,访问的格式为域名+端口+路径。例如
阅小说图片访问的格式示例
http://pt.yuenov.com:15555/path
HTTP接口返回的数据统一的格式为:
{
  "result":{
    "code":0,
    "msg":"成功"
  },
  "data":{
  }
}返回的字段定义如下:
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| result | Object | 是 | HTTP返回的数据状态信息 
 | 
| data | Object | 是 | HTTP返回的数据 | 
数据的状态码code定义如下
| 状态码 | 说明 | 
|---|---|
| 0 | 返回数据正确 | 
| 101 | 新用户创建成功 | 
| 102 | 未查询到数据 | 
| 203 | 书源已经失效 | 
| 1001 | 参数校验出错 | 
| 1002 | 返回值异常 | 
| 1003 | 非法请求 | 
| 1005 | 权限验证异常 | 
| 1007 | 远程调用服务超时 | 
| 9999 | 系统出错 | 
注:下面接口返回的数据全部在data对象内
下载到本地的书籍在特定时机应该检查书籍是否有更新,使得本地的数据保持最新的状态。一般用于连载书籍检查是否有新章节更新。
与/app/open/api/chapter/getByBookId配合使用,来更新本地缓存的目录
| 路径 | /app/open/api/book/checkUpdate | |||
|---|---|---|---|---|
| 请求方式 | POST application/json | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| books | List | 是 | 检查更新的书籍列表,每个对象的信息如下 
 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| updateList | List | 否 | 需要更新的书籍列表,每个对象的信息如下 
 | 
根据关键词搜索书籍
| 路径 | /app/open/api/book/search | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| keyWord | String | 是 | 书籍关键词 | |
| pageNum | Integer | 是 | 请求第几页的数据,pageNum最小值为1 | |
| pageSize | Integer | 是 | 请求每页多少条的数据 | |
返回的结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 搜索的结果书籍列表 | 
| pageNum | Integer | 否 | 请求第几页数据 | 
| pageSize | Integer | 否 | 请求每页多少条的数据 | 
| total | Integer | 否 | 实际返回多少条数据 | 
书籍的字段定义如下
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| author | String | 否 | 作者 | 
| bookId | Integer | 是 | 书籍号 | 
| categoryName | String | 是 | 书籍所属分类 | 
| chapterStatus | String | 否 | 书籍连载状态 
 | 
| coverImg | String | 否 | 书籍的封面路径,返回的是书籍封面的路径并非URL地址,需要手动拼接上域名+端口参考这里 | 
| desc | String | 否 | 书籍内容介绍 | 
| title | String | 否 | 书籍的名称 | 
| word | String | 否 | 书籍的字数 | 
App内发现页面接口
| 路径 | /app/open/api/category/discovery | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 发现页书籍分类列表,列表中每个对象有以下字段 
 | 
书籍的全部分类
| 路径 | /app/open/api/category/getCategoryChannel | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| channels | List | 否 | 获取所有的频道分类列表,目前有男生频道和女生频道,列表中每个对象包含以下字段 
 | 
分类信息的字段定义如下:
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| categoryId | Integer | 是 | 分类号 | 
| categoryName | String | 否 | 分类名 | 
| coverImgs | List<String> | 否 | 分类的封面列表,包含该分类排名前三书籍的封面路径并非URL地址,需要手动拼接上域名+端口参考这里 | 
书籍榜单信息
| 路径 | /app/open/api/rank/getList | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| channels | List | 否 | 获取所有的频道榜单目前有男生频道和女生频道每个对象包含以下字段 
 | 
榜单信息的字段定义如下:
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| rankId | Integer | 是 | 榜单号 | 
| rankName | String | 否 | 榜单名 | 
| coverImgs | List | 否 | 榜单的封面列表,包含该榜单排名前三书籍的封面路径并非URL地址,需要手动拼接上域名+端口参考这里 | 
每个榜单内的书籍列表
| 路径 | /app/open/api/rank/getPage | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| channelId | Integer | 是 | 频道号 | |
| rankId | Integer | 是 | 榜单号 | |
| pageNum | Integer | 是 | 请求第几页的数据,pageNum最小值为1 | |
| pageSize | Integer | 是 | 请求每页多少条的数据 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 榜单书籍列表,每个书籍的定义在这里 | 
| pageNum | Integer | 否 | 请求第几页的数据,pageNum最小值为1 | 
| pageSize | Integer | 否 | 请求每页多少条的数据 | 
| total | Integer | 否 | 总共有多少条数据 | 
所有完本书籍信息
| 路径 | /app/open/api/category/getCategoryEnd | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| pageNum | Integer | 是 | 请求第几页的数据,pageNum最小值为1 | |
| pageSize | Integer | 是 | 请求每页多少条的数据 | |
返回数据
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 全部完结书籍的分类列表,列表中每个对象有以下字段 
 | 
| pageNum | Integer | 否 | 请求第几页的数据,pageNum最小值为1 | 
| pageSize | Integer | 否 | 请求每页多少条的数据 | 
| total | Integer | 否 | 总共有多少条数据 | 
书籍专题信息
| 路径 | /app/open/api/book/getSpecialList | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| pageNum | Integer | 是 | 请求第几页的数据,pageNum最小值为1 | |
| pageSize | Integer | 是 | 请求每页多少条的数据 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| specialList | List | 否 | 全部的专题列表,列表中每个对象有以下字段 
 | 
专题下全部的书籍和换一换列表
| 路径 | /app/open/api/book/getSpecialPage | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| id | Integer | 是 | 专题号 | |
| pageNum | Integer | 是 | 请求第几页的数据,pageNum最小值为1 | |
| pageSize | Integer | 是 | 请求每页多少条的数据 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 专题的书籍列表,每个书籍的定义在这里 | 
| pageNum | Integer | 否 | 请求第几页的数据,pageNum最小值为1 | 
| pageSize | Integer | 否 | 请求每页多少条的数据 | 
| total | Integer | 否 | 总共有多少条数据 | 
查看发现页分类的全部或部分内容(查看全部,换一换)
| 路径 | /app/open/api/category/discoveryAll | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| pageNum | Integer | 是 | 请求第几页的数据,pageNum最小值为1 | |
| pageSize | Integer | 是 | 请求每页多少条的数据 | |
| type | String | 是 | 发现页的分类类型 
 | |
| categoryId | Integer | 否 | 书籍分类号,仅当type=CATEGORY有效 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 发现页某个分类的书籍列表,每个书籍的定义在这里 | 
| pageNum | Integer | 否 | 请求第几页的数据,pageNum最小值为1 | 
| pageSize | Integer | 否 | 请求每页多少条的数据 | 
| total | Integer | 否 | 总共有多少条数据 | 
某个分类下所有的书籍
| 路径 | /app/open/api/book/getCategoryId | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| pageNum | Integer | 是 | 请求第几页的数据,pageNum最小值为1 | |
| pageSize | Integer | 是 | 请求每页多少条的数据 | |
| categoryId | Integer | 是 | 书籍所属的分类号 | |
| channelId | Integer | 否 | 某个频道下的分类书籍 | |
| orderBy | String | 否 | 分类书籍排序与筛选规则,不传返回全部书籍默认排序 
 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 分类的书籍列表,每个书籍的定义在这里 | 
| pageNum | Integer | 否 | 请求第几页的数据,pageNum最小值为1 | 
| pageSize | Integer | 否 | 请求每页多少条的数据 | 
| total | Integer | 否 | 总共有多少条数据 | 
每本书的详细信息
| 路径 | /app/open/api/book/getDetail | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| bookId | Integer | 是 | 书籍号 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| author | String | 否 | 书籍作者 | 
| bookId | Integer | 是 | 书籍号 | 
| categoryName | String | 是 | 书籍所属分类名 | 
| chapterNum | Integer | 否 | 总共有多少章节 | 
| coverImg | String | 否 | 书籍的封面路径,返回的是书籍封面的路径并非URL地址,需要手动拼接上域名+端口参考这里 | 
| desc | String | 否 | 书籍内容介绍 | 
| title | String | 否 | 书籍的名称 | 
| update | Object | 否 | 书籍更新信息包含以下字段 
 | 
| word | String | 否 | 书籍的字数 | 
| recommend | List | 否 | 相关书籍推荐列表,每个书籍的定义在这里 | 
在书籍详情中的推荐列表和换一换
| 路径 | /app/open/api/book/getRecommend | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| bookId | Integer | 是 | 书籍号 | |
| pageNum | Integer | 是 | 请求第几页的数据,pageNum最小值为1 | |
| pageSize | Integer | 是 | 请求每页多少条的数据 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 书籍推荐列表,每个书籍的定义在这里 | 
| pageNum | Integer | 否 | 请求第几页的数据,pageNum最小值为1 | 
| pageSize | Integer | 否 | 请求每页多少条的数据 | 
| total | Integer | 否 | 当前请求有多少条数据 | 
获取书籍全部或部分目录信息,当书籍有更新时需要调用该接口来更新本地保存的目录信息,传入chapterId获取此章节之后的数据,不传chapterId是获取全部目录。如果本地已经保存过目录信息,建议最好传入最后一章chapterId来更新本地目录。而不是全量获取所有的目录。
| 路径 | /app/open/api/chapter/getByBookId | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| bookId | Integer | 是 | 书籍号 | |
| chapterId | Long | 否 | 从第几章开始请求目录信息,如果不传请求全部的目录信息 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| author | String | 否 | 作者 | 
| bookId | Integer | 是 | 书籍号 | 
| coverImg | String | 否 | 返回的是书籍封面的路径并非URL地址,需要手动拼接上域名+端口参考这里 | 
| desc | String | 否 | 书籍内容介绍 | 
| title | String | 否 | 书籍的名称 | 
| word | String | 否 | 书籍的字数 | 
| chapters | List | 书籍的目录列表,每个目录包含以下字段 
 | 
下载章节内容,目前开放接口不支持批量下载
由于书源失效会导致部分书籍不可访问。如果错误码为203表示书源已经失效,此时服务器会自动更新书源。
如果书源失效并返回203请重新调用书籍目录接口/app/open/api/chapter/getByBookId来获取最新的目录信息 
此时当前接口需要传递v这个参数,这个参数由/app/open/api/chapter/getByBookId接口返回。
v表示当前此书籍的版本。默认为0,表示此书籍的书源没有失效过。1表示为此书籍的书源更新过一次。
/app/open/api/chapter/getByBookId返回v=1,如果当前接口传v=0表示从旧书源获取内容,会导致获取内容失败。
| 路径 | /app/open/api/chapter/get | |||
|---|---|---|---|---|
| 请求方式 | POST application/json | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| bookId | Integer | 是 | 下载的书籍号 | |
| chapterIdList | List<Long> | 是 | 下载的章节号列表 | |
| v | Integer | 否 | 书籍的版本号 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 下载的章节内容,每个章节的字段如下 
 | 
刷新章节内容,获取最新的章节数据。与下载不一样,下载是获取服务器缓存的数据,但不是最新的数据。一般是下载的内容不正确时会调用该接口。该接口响应时间比较长,谨慎调用。
| 路径 | /app/open/api/chapter/updateForce | |||
|---|---|---|---|---|
| 请求方式 | POST application/json | |||
| 参数 | 名称 | 类型 | 必需 | 说明 | 
| bookId | Integer | 是 | 更新的书籍号 | |
| chapterIdList | List<Long> | 是 | 更新的章节号列表 | |
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| list | List | 否 | 更新的章节内容,每个章节的字段如下 
 | 
获取热门搜索,书籍默认分类等配置信息,通常是在每次开机时启动
| 路径 | /app/open/api/system/getAppConfig | |||
|---|---|---|---|---|
| 请求方式 | GET | |||
返回结果
| 名称 | 类型 | 必需 | 说明 | 
|---|---|---|---|
| categories | List | 否 | 书籍默认的分类列表,每个分类的字段如下 
 | 
| hotSearch | List | 否 | 热搜书籍列表,每个书籍的定义在这里 | 
服务器只提供搜索以及在线转码的计算能力,没有存储任何小说内容。如有任何疑问请通过上面提供的联系方式联系我们。
