#WEB API
- 基于json通信
- 基于POST方法
##web api 签名验证 ###签名方法 调用 API 时需要对请求参数(除sign)进行签名验证,服务器会对该请求参数进行验证是否合法的。方法如下: 根据参数名称(除签名和图片文件)将所有请求参数按照字母先后顺序排序:key + value .... key + value 例如:将foo=1,bar=2,baz=3 排序为bar=2,baz=3,foo=1,参数名和参数值链接后,得到拼装字符串bar2baz3foo1
###系统暂时只支持MD5加密方式:
- md5:将 appsecret 拼接到参数字符串头、尾进行md5加密,格式是:md5(appsecretkey1value1key2value2...appsecret)
- 我们需要的是32位的字符串,字母全部小写(如果是md5出来的是大写字母,请转为小写),图片文件不用加入签名中测试。
- 以下所有api均需要以下参数: appid, sign_method, sign
##状态码
err | errmsg | 描述 |
200 | 成功 | |
401 | 参数不正确 | |
402 | 验证失败 | |
403 | 缺少sign_method | |
404 | 缺少sign参数 | |
405 | 非法用户 | |
406 | 不存在 | |
500 | 未知错误 | |
601 | 用户名已经存在 |
##Json返回格式
{
"code" : "状态码",
"desc": "描述",
"result": "返回的数据结果"
}
##文本搜索引擎 ###参数列表
参数名 | 描述 | 默认值 |
appid | 应用ID | 您自己的appid |
sign_method | 签名方式 | 目前支持MD5 |
sign | 签名 | MD5加密后结果 |
text | 搜索内容 | 搜索内容, 最大长度:65535 |
docid | 文档id | 文档id, 用于搜索时返回 |
docids | 文档id范围 | 如: 1-1000, 搜索引擎会在id范围内进行搜索, 注: docids的最大取值范围为1 ~ 999999999999 |
tags | 标签 | 如: 搜索-引擎 被打上此标签的搜索内容, 最大长度:65535 |
timeout | 超时时间 | 如果搜索超时,也会有部分内容返回 |
##中文分词 ###参数列表
参数名 | 描述 | 默认值 |
appid | 应用ID | 您自己的appid |
sign_method | 签名方式 | 目前支持MD5 |
sign | 签名 | MD5加密后结果 |
text | 文本 | 要被分词的文本 |
mode | 模式 | 0 普通模式 1 搜索引擎模式 |
##新闻WEB API ###参数列表
参数名 | 描述 | 默认值 |
appid | 应用ID | 您自己的appid |
sign_method | 签名方式 | 目前支持MD5 |
sign | 签名 | MD5加密后结果 |
tag | 分类 | 分类见下表 |
limit | 每次请求的条数 | 10 |
page | 页数 | 页数 |
###获取新闻接口 ####接口地址 /news/ ####参数 tag / limit / page #####分类列表
标签 | 推荐 | 热点 | 社会 | 娱乐 | 科技 | 汽车 | 时尚 |
字段 | __all__ | news_hot | news_society | news_entertainment | news_tech | news_car | news_fashion |
###获取美女图片接口 ####接口地址 /newsgirlpic/ ####参数: tag / limit / page #####获取全部美女图片分类: tag为空 #####获取分类下的图片: tag可选参数如下
标签 | 视觉大片 | 八卦 | 服饰搭配 | 美体瘦身 | 彩妆美发 |
字段 | photograph_gallery | gossip | style | body | beauty |
##小说WEB API ###参数列表
参数名 | 描述 | 默认值 |
appid | 应用ID | 您自己的appid |
sign_method | 签名方式 | 目前支持MD5 |
sign | 签名 | MD5加密后结果 |
first | 一级分类 1:男 0:女 | 无 |
second | 二级分类,按小说内容 | 无 |
novelid | 小说ID | 无 |
chapterid | 章节ID | 无 |
wd | 搜索关键词 | 无 |
###获取某分类下的小说列表接口 ####接口地址 /novellist/ ####参数 first / second ####返回字段 title, novelid, author, picture, introduction
###获取小说简介接口 ####接口地址 /novelintroduction/ ####参数说明 novelid ####返回字段 title, novelid, author, picture, introduction, chapternum
###获取小说的章节列表接口 ####接口地址 /novelchapter/ ####参数说明 novelid ####返回字段 title(小说标题), subtitle(小说章节标题), chapterid(章节id), novelid , author, picture, introduction
###获取章节内容接口 ####接口地址 /novelcontent/ ####参数 chapterid ####返回字段 title(小说标题), subtitle(小说章节标题), novelid(小说ID), content(内容), chapterid, prev(上一章节chapterid), next(下一章节chapterid)
###小说点击事件上传 ####接口地址 /novelclick/ ####接口描述 上传用户小说点击数,用来记录小说总阅读数 ####参数 novelid ####返回字段 novelid, novelpv(当前novelid的对应的小说阅读量)
###获取小说排名 ####接口地址 /novelrank/ ####接口描述 获取小说热度排行榜 ####参数 page / limit ####返回字段 novelid / title / novelpv / picture / author / first / second / rank(排名)
###小说搜索 ####接口地址 /novelsearch/ ####接口描述 获取小说搜索结果 ####参数 wd ####返回字段 id(即novelid) / title / novelpv / picture(在地址前加 http://api.9miao.com/static/spider/) / author / first / second / introduction
###小说下载
####接口地址
/noveldownload/
####接口描述
下载小说
####参数
novelid
####返回字段
novelsrc (小说的下载地址)
####小说文件格式
Json格式, 格式如下:
{
"title" : "XXXXXXXXXXX", //小说标题
"chaptercontent": [
{
"chapterid": 123,
"subtitle": "XXXXXXX",
"content": "XXXXXXXXXXXXXX",
},
]
}
##用户认证接口 ###参数列表
参数名 | 描述 | 默认值 |
appid | 应用ID | 您自己的appid |
sign_method | 签名方式 | 目前支持MD5 |
sign | 签名 | MD5加密后结果 |
username | 用户名 | 无 |
password | 密码 | 无 |
###亲加通讯云的用户登录验证 登录的用户名格式 account-appid-method-sign 将account,appid,method进行字典排序后md5加密 sign = md5(appsecretkey1value1key2value2...appsecret)
###验证用户是否存在 ####接口地址 /checkuserexist/ ####接口描述 验证用户是否已经存在 ####参数 username ####返回字段 存在code: 601 不存在 code: 602
##开发计划
- 2015-12-18 将数据库中的小说转化为json,并形成txt文件,开发响应脚本,脚本名称 novelfile done
- 2015-12-14 提供小说文件下载接口 done
- 2015-12-14 将数据库中的小说文本转化为txt文件 done
- 2015-12-9 增加redis缓存