== 1.基本约定 == {{{ 1.当接口处理正常时,HTTP STATUS CODE 返回给200。包括有正常的业务数据和数据为空的情况。 2.当接口处理异常时,HTTP STATUS CODE 返回给500,并且给出具体的错误信息。 { "uri" : "/intf/albums-by-type.jsp", "error-desc":"Need you follow uid.", "user-notice":"给用户的提示放在这里" }` 3.接口默认的字符编码是UTF-8,接口需要实现对req-enc和resp-enc参数的支持。在JSP的最顶部,实现类似下面的代码: String queryString = request.getQueryString(); String requestEncoding = getParam(queryString,"req_enc"); String responseEncoding = getParam(queryString,"resp_enc"); if(isNotBlank(requestEncoding)){ request.setCharacterEncoding(requestEncoding); } if(isNotBlank(responseEncoding)){ response.setCharacterEncoding(responseEncoding); } 4.所有有写操作的数据接口,必须用POST方式提交,在接口里需要判断提交方式,拒绝GET的调用请求。 5.接口中的JSON字符串,key都用双引号("")包裹,value是字符串类型时,也用双引号("")包裹;是数字类型时,不用引号。 }}} == 2.接口列表 == === 2.1 优惠/发现 分类接口 === {{{ HTTP请求方式:get 是否需要登录:否 提交参数: 参数说明: 返回数据: { "category":[ { "name":"优惠精选", "id":"123" }, { "name":"数码家电", "id":"124" }, { "name":"日用化妆", "id":"125" }, { "name":"食品保健", "id":"126" }, { "name":"家居", "id":"127" } ] } }}} === 2.2文章列表接口 === {{{ 请求参数: 请求方法:get 是否需要登录:否 返回参数: { "pageCount":"9", "pageNo":"1", "data":[ { "commentNum":"0", //评论数 "id":"2395585", "title":"有钱你就来", //标题 "image":"http://img0.pcauto.com.cn/pcauto/1303/15/2395585_1.png", //图片 "imageHeight":"123", //图片高度 "imageWidth":"350", //图片宽度 "pubDate":"2013-02-03", //时间 "wroth":"1", //值的数量 "price":"只售998,还包邮~" //价格 "deprecated":1 //是否过期 } ], "pageSize":"20" } }}} === 2.3 终端页接口 === {{{ 请求方法:get 是否需要登录:否 返回参数:web页面的html代码 备注: 附加信息用注释的方式放到html代码里面以/*@_HTML_META_START_开头, _HTML_META_END_@*/结尾,里面的内容只有评论url,用json格式,例如: {"url":"http://www.pcauto.com.cn/nation/270/2707699.html"} }}} === 2.4 评论列表接口 === {{{ HTTP请求方式:get 是否需要登录:否 提交参数: topicId: 评论id articleId: 文章id 返回数据: { "comments": [ { //没有引用其他评论的评论 "1": { //表达其引用关系的key "id":"24991904",//帖子id "name": "不是网易的江苏省盐城市网友 帅气飞扬: ", //用户名称 "floor": "1737", //楼层 "time": "2013-01-05 09:05:40", //时间 "content": "内容过于暴力,已和谐" //内容 }, "current":"1", //当前最外层引用标识 "support":"10086" //"顶"数量 "expand":false //判断是否展开,默认为false }, { "3": { "id":"24991804",//帖子id "name": "不是网易的江苏省盐城市网友 帅气飞扬: ", "floor": "1737", "time": "2013-01-05 09:05:40", "content": "内容过于暴力,已和谐" }, "2": { "id":"24941904",//帖子id "name": "不是网易的江苏省盐城市网友 帅气飞扬: ", "floor": "1737", "time": "2013-01-05 09:05:40", "content": "内容过于暴力,已和谐" }, "1": { "id":"24491904",//帖子id "name": "不是网易的江苏省盐城市网友 帅气飞扬: ", "floor": "1737", "time": "2013-01-05 09:05:40", "content": "内容过于暴力,已和谐" }, "4": { "id":"24993904",//帖子id "name": "不是网易的江苏省盐城市网友 帅气飞扬: ", "floor": "1737", "time": "2013-01-05 09:05:40", "content": "内容过于暴力,已和谐" }, "current":"4", "support":"10086" //顶数 "expand":false //判断是否展开,默认为false } ], "hot-comments": [ { //没有引用其他评论的评论 "1": { //表达其引用关系的key "id":"24691904",//帖子id "name": "不是网易的江苏省盐城市网友 帅气飞扬: ", //用户名称 "floor": "1737", //楼层 "time": "2013-01-05 09:05:40", //时间 "content": "内容过于暴力,已和谐" //内容 }, "current":"1" "support":"10086" //顶数 "expand":false //判断是否展开,默认为false } ], "docUrl": "http://im_an_artical" } 备注: }}} === 2.5 发评论接口 === {{{ http://cmt.pcauto.com.cn/action/comment/create_utf8.jsp HTTP请求方式:post 是否需要登录:否 提交参数:话题id, 话题url, 标题, 用户名, 是否登录, columnId, 内容, 回复楼层 (通过body传参) 返回数据: { "commentId":25705754, "floor":27, "showName":"iostester", "brief":"Really good car hm~~~", "status":0, "createTime":"2013-07-19 10:37:03", "resultCode":0, "resultMsg":"您的评论已经成功发表。注:评论在审核后才能出现在列表中,谢谢!", "userId":25520497 } }}} === 2.6 值不值接口 === {{{ 请求参数: 请求方法:get 是否需要登录:否 返回参数: { "articleId":25705754, "showName":"iostester", "status":0, "createTime":"2013-07-19 10:37:03", "resultCode":0, "resultMsg":"您的评论已经成功发表。注:评论在审核后才能出现在列表中,谢谢!", "userId":25520497 } }}} === 2.7 摇一摇接口 === {{{ 请求参数: 无 请求方法:get 是否需要登录:否 返回参数: { "pageCount":"1", "pageNo":"1", "data":[ { "commentNum":"0", "id":"2395585", "title":"“BMW大师殿堂”杨丽萍舞剧《孔雀》在陕西惊艳登场", "image":"http://img0.pcauto.com.cn/pcauto/1303/15/2395585_1.png", "pubDate":"2013-02-03", //时间 "wroth":"1", //值的数量 "price":"160元包邮" //价格 } ], "pageSize":"20" } }}}