| Version 92 (modified by xujianyou, 13 years ago) (diff) |
|---|
基本约定
1.当接口处理正常时,HTTP STATUS CODE 返回给200。包括有正常的业务数据和数据为空的情况。
2.当接口处理异常时,HTTP STATUS CODE 返回给500,并且给出具体的错误信息。
{
"uri" : "/intf/albums-by-type.jsp",
"error-code":"20502",
"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是字符串类型时,也用双引号("")包裹,并且过滤掉回车换行,对字符串中包含的双引号(")进行转义;是数字类型时,不用引号。
6.所有接口的URL都必须是小写,参数名称也需要是小写。
1.首页接口---主题列表
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.0/
URL: http://youpin.pchouse.com.cn/jsp/intf/list_theme.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/list_theme.jsp
请求方式:GET
是否需要登录:否
功能说明:搜索主题,已分页形式返回
提交参数:
"pageNo": 1
"pageSize": 10
提交参数说明:
pageNo: 分页页码
pageSize: 分页大小
返回参数:
{
"total":100,
"pageNo":1,
"pageSize":10,
"theme":[
{
"id":10,
"logo":"http:xxxx",
"name":"天猫双十二真情回馈活动",
"intro":"topic descript",
"seq": 1
},
{
"id":11,
"logo":"http:xxxx",
"name":"天猫双十二真情回馈活动",
"intro":"topic descript",
"seq": 2
},
]
}
返回参数说明:
total:主题总数量
pageNo:分页用页码
pageSize:分页用每页数量
theme:主题数组
id:主题的id
logo:主题图片
name:主题名称
intro:主题描述
2.主题接口
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.0/
URL: http://youpin.pchouse.com.cn/jsp/intf/theme.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/theme.jsp
请求方式:GET
是否需要登录:否
功能说明:根据主题id,返回整个主题信息
提交参数:
id:主题id
返回参数:
{
"id": 1
"name": "天猫双十二真情回馈活动",
"logo": "http://xxxx",
"intro": "this is intro",
"line": [
{
"id": 1001,
"style": 1,
"seq": 1
"products": [
{
"id": 2202,
"name": "田园布艺沙发 sj002",
"src": "http://xxx",
"link": "http://xxx",
"seq": 1,
"favorite": 5231
}
]
},
{
"id": 1002,
"style": 3,
"seq": 2
"products": [
{
"id": 2203,
"name": "田园布艺沙发 sj002abc",
"src": "http://xxx",
"link": "http://xxx",
"seq": 1,
"favorite": 523
},
{
"id": 2204,
"name": "田园布艺沙发 sj002abc123",
"src": "http://xxx",
"link": "http://xxx",
"seq": 2,
"favorite": 52
}
]
}
]
}
返回参数说明:
id:主题id
name: 主题名称
logo: 主题封面
intro: 主题描述
line: 主题每行信息
id: 行id
style: 行模版 参数值具体请参考: 附加文件:模板顺序
seq: 行排序
products: 行所包含的产品数组
id: 产品id
name: 产品名称
src: 产品封面
link: 产品链接
seq: 排序
favorite: 收藏数
3.单品库首页
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.0/
URL: http://youpin.pchouse.com.cn/jsp/intf/category.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/category.jsp
请求方式:GET
是否需要登录:否
功能说明:返回单品库的类别
提交参数:无
返回参数:
{
"categories":{
"1001":{
"level":1,
"seq":1,
"name":"客厅",
"logo":"http://",
"intro":""
},
"1002":{
"level":1,
"seq":2,
"name":"卧室",
"logo":"http://",
"intro":""
},
"100101":{
"level":2,
"seq":1,
"name":"沙发",
"logo":"http://",
"intro":""
},
"100102":{
"level":2,
"seq":2,
"name":"荼几",
"logo":"http://",
"intro":""
}
},
"relations":{
"1001":[
100101,
100102
],
"1002":[]
}
}
返回参数说明:
categories: 包含所有的类别(不分层级)
relations: 描述类别的关联关系(仅下级)
id:节点ID
level:节点的层次,1表示根节点。
seq:节点的顺序,同级节点之间的显示顺序。从1开始
name:节点名称
logo: 类别logo
intro: 类别描述
$node id value:节点ID的值。以节点ID的值作为key,该节点的子节点集合作为value,建立节点之间的关联关系,实现节点的向下遍历。
示例表示:
-客厅
-- 沙发 -- 荼几
-卧室
4.搜索接口(搜索结果跟猜你喜欢的返回参数一样)
http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.0/
URL: http://youpin.pchouse.com.cn/jsp/intf/list.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/list.jsp
请求方式:GET
是否需要登录:否
功能说明:根据条件获取产品列表
提交参数:
type: 1 q: 沙发,红色 pageNo: 1 pageSize: 50
提交参数说明:
type: 1为查询主题,2为查询产品。0为混合查询。
q: 关键字(必须以utf-8编码提交,多个关键字用英文逗号隔开)
pageNo: 页码
pageSize: 分页大小
返回参数:
{
"total":100,
"pageNo":1,
"pageSize":10,
"items":[
{
"type": 1
"id": 1
"name":"天猫双十二真情回馈专题",
"src":"http://"
},
{
"type": 2
"id": 1
"name":"法丽莎家具 欧式床 实木床 田园婚床 双人床 1.8 1.5米",
"price":"¥2699.00",
"price2":"¥2000.00",
"src": "http://",
"favorite":1234
}
]
}
返回参数说明:
total:单品总数量
pageNo:分页用页码
pageSize:分页用每页数量
items: 搜索结果数组
type: 1为主题 2为产品 name:type为1时,是主题名;type为2时,是产品名
price:产品原价,仅当type为2时生效
price2: 折后价(可能为空),仅当type为2时生效
favorite:收藏数量
src: 图片(无须区分主题、产品)
5.测试页
http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.0/
URL: http://youpin.pchouse.com.cn/jsp/intf/test.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/test.jsp
请求方式:GET
是否需要登录:否
功能说明:返回最新的测试页面内容。
一个测试会分解成若干个测试题组,每个测试题组包含一个或多个测试题目。每个测试题组能够测试出用户的一个特征。该用户特征决定了后续题组的加载顺序
一个测试题目可以包含多个回答选项,测试题目的回答选项只能进行单选。
网友在答题过程中,只能单向的前进或者后退,不能进行跳跃。在进行回退时,能够从当前的题目,一直退回到测试的开始题目。这种回退可能会跨越多个题组
网友在答题过程中,能够放弃答题。
客户端需要记录网友答题的位置,在网友切换APP时,能够回到上次未完成的答题位置。
提交参数:无
返回参数:
[
{
"$group-id": {
"type":"single",
"topics": [
{
"topic-seq": 1,
"topic-desc": "",
"topic-img": "",
"options": [{"option-seq": 1,"option-desc": ""},
{"option-seq": 1,"option-desc": ""}]
},
{
"topic-seq": 2,
"topic-desc": "",
"topic-img": "",
"options": [{"option-seq": 1,"option-desc": ""},
{"option-seq": 1,"option-desc": ""}]
}
],
"relates": [{"1,2": "3"},{"1,3": "5"}]
}
},
{
"$group-id": {
"type":"percentage",
"topics": [
{
"topic-seq": 1,
"topic-desc": "",
"percentage":30,
"options": [{"option-seq": 1,"options-img": "","option-desc": "","traits":"古典"},
{"option-seq": 2,"options-img": "","option-desc": "","traits":"现代"}]
},
{
"topic-seq": 2,
"topic-desc": "",
"percentage":50,
"options": [{"option-seq": 1,"options-img": "","option-desc": "","traits":"古典"},
{"option-seq": 2,"options-img": "","option-desc": "","traits":"现代"}]
}
]
}
}
]
返回参数说明:
$group-id:测试题组的ID,一个测试题组可以包含一个或多个测试题
type:single 或者 percentage,当type=single时,表示该测试题组是单选,并且会给出完成此题组后,加载下一个题组的对应规则。如果该题组回答完成后,
无条件的跳转到后继题组,用 "relates": [{"*": "3"}] 表示。
type=percentage时,该题组仅仅出现在最后一个,类型为percentage的题组,回答完成后得到的是一个用户特征的百分比集合,例如{"现代":70},{"简约":30}
topics:测试题组下面的测试题数组,存放了该测试题组的具体测试题目。
topic-seq:一个测试题组中,测试题目的顺序
topic-desc:测试题目的描述
options:测试题目的选项数组。
option-seq:一个测试题目对应的选项的顺序号
options-img:一个测试题目对应的选项的图片。[[BR]]
option-desc:一个测试题目对应的选项的描述。
relates:完成一个测试题组下题目的测试后,根据测试结果会判别出用户的一些特征,根据这些特征,系统在加载后续题组时会有所不同
这个数组就存放了这种对应关系。这个数组的每个元素表示一种用户特征和后继题组的对应关系。数字元素的【key】表示了网友
参与了当前题组的测试结果,【value】表示了测试题组的ID。测试结果是该测试题组下,每个答题选项,按照题目顺序拼接的一个字符串,该字符串用','分隔。
6.测试结果记录
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/testRecord.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/testRecord.jsp
请求方式:POST
是否需要登录:是
功能说明:登录后记录用户测试的内容
提交参数:
common_session_id:common_session_id。
type:single 或者 percentage。
traits:当type=single时,该字段表示提交的网友在测试过程中,最后一个测试题所标识的用户特征。 如果type=percentage时,该字段表示一个用户特征的百分比集合,例如{"现代":70},{"简约":30} 。
返回参数:
7.终端页
http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.0/
URL: http://youpin.pchouse.com.cn/jsp/intf/product.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/product.jsp
请求方式:GET
是否需要登录:否
功能说明:根据产品id,返回产品的详细信息
提交参数:
id:产品id common_session_id:common_session_id
返回参数:
{
"name":"法丽莎家具 欧式床 实木床 田园婚床 双人床 1.8 1.5米",
"price":"¥2699.00",
"pric2":"¥2000.00",
"nick":"发丽莎家居旗舰店",
"picUrl":"http://xxxx",
"detailUrl":"http://",
"isCollected":0,
"image":[
"http://xxxx",
"http://xxxx",
"http://xxxx"
],
"favorite": 123
}
返回参数说明:
name:产品名
price:原价
price2:折后价
nick:商家名称
picUrl: 商品主图
detailUrl: 淘宝终端页
image:图片数组
isCollected:是否已经被收藏了,1为是,0为否,common_session_id为空时,isCollected=0[[BR]]
8.用户信息
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/user.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/user.jsp
请求方式:GET
是否需要登录:是
功能说明:登录后,返回用户信息
提交参数:
"common_session_id":"xxxxx"
提交参数说明:
common_session_id: common_session_id
返回参数:
http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
{
"id": 1,
"nick":"imoveto1",
"status": 1,
"face":"http://xxx",
"sign":"坚持世上一切美好的事物,哈哈!",
"favoriteCount":34,
"recordCount":134,
"commonSessionId": ""
}
id: 优品用户id nick:用户呢称 commonSessionId:common_session_id status:用户状态 -1为禁用 1为正常 sign:备注 face:头像 favoriteCount:收藏夹数量 recordCount:浏览历史
注意:用户信息可能包含换行符,统一将 \r\n 转换为 [-n-] 和 \n 转换为 [-n-]
9.用户信息修改接口
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/user_edit.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/user_edit.jsp
请求方式:POST
是否需要登录:是
功能说明:修改用户信息接口
提交参数:
nick:呢称 common_session_id: common_session_id userid:用户id sign:个性签名 face:头像
返回参数:
result:返回代码, msg:返回信息
10.登录接口(可以是分成3个URL)
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
请求方式:POST
功能说明:已新浪微博,腾讯微博,淘宝账号登录
提交参数:
type:区分新浪微博(sina_house),腾讯微博,淘宝账号 return: 登录逻辑处理 bind_url: 绑定逻辑处理
登录成功,跳转到 http://youpin.pchouse.com.cn/jsp/intf/bind.jsp(测试: http://dev10.pchouse.com.cn:8083/jsp/intf/bind.jsp),并且header带有
返回参数:
nick: 用户名称
face: 用户头像
sign: 用户个性签名
passportId: 用户passportId
commonSessionId: common_session_id
favoriteCount:收藏数
recordCount:浏览记录数
openInfo:{
qzone_house:qzone的json信息
sina_house:sina的json信息
}
sina的json包含以下信息:
"sina_house":{
"id":***,
"createTime":***,
"token":"XXX",
"accountId":***,
"openAccountId":"XXX",
"consumerId":***,
"expiresIn":"XXX",
"updateTime":***,
"code":"XXX"
}
注意:用户信息可能包含换行符,统一将 \r\n 转换为 [-n-] 和 \n 转换为 [-n-]
11.注销接口(已弃用,不需要web端做接口,APP端直接提交注销请求到passport即可)
URL: http://passport2.pcgames.com.cn/passport2/passport/logout.jsp[[BR]]
提交参数:
common_session_id:session值
12.收藏接口
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/favorite.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/favorite.jsp
请求方式:POST
是否需要登录:是
功能说明:登录后记录用户收藏的内容
提交参数:
common_session_id:common_session_id, productId: 商品ID
返回参数:
result:返回代码, msg:返回信息
13.收藏列表
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/user_favorite.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/user_favorite.jsp
请求方式:GET
是否需要登录:是
功能说明:登录后显示用户收藏的内容
提交参数:
common_session_id:common_session_id
返回参数:
{
"userId": 1,
"userName":"XXX",
"products": [
{
"id": 2203,
"name": "田园布艺沙发 sj002abc",
"src": "http://xxx",
"link": "http://xxx",
"price": 998.00,
"price2": 998.00,
"favorite": 523,
"favoriteTime": XXXX-XX-XX
},
{
"id": 2204,
"name": "田园布艺沙发 sj002abc123",
"src": "http://xxx",
"link": "http://xxx",
"price": 998.00,
"price2": 998.00,
"favorite": 52,
"favoriteTime": XXXX-XX-XX
}
]
}
userId: 用户id
userName: 用户昵称
products: 产品列表
id: 产品id
name: 产品名
src: 产品图片地址
link: 产品链接
price: 价格
price2: 折扣价
favorite: 收藏数
favoriteTime: 收藏时间
14.浏览记录
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/record.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/record.jsp
请求方式:POST
是否需要登录:是
功能说明:发送用户浏览过的产品
提交参数:
common_session_id:common_session_id pid:产品id macid: mac地址 t-time: 停留时间 v-time: 浏览时间
返回参数:
15.搜索(已弃置,请使用4.搜索接口)
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL:
请求方式:POST
是否需要登录:否
功能说明:根据条件搜索,已分页形式返回产品列表
提交参数:
返回参数:
16.发送评论
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/comment.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/comment.jsp
请求方式:POST
是否需要登录:都可以
功能说明:用户发送评论信息
提交参数:
情况1:没有登录 productId:产品Id content:用户评论内容 情况2:已经登录 common_session_id:登录信息字符串 productId:产品Id content:用户评论内容 is_incognito:用户是否匿名评论,1,表示用户是选择匿名评论;-1,表示用户是选择记录用户信息的评论
返回参数:
17.获取评论(视情况而定,是否在页面终端页中加入)
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/get_comment.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/get_comment.jsp
请求方式:GET
是否需要登录:否
功能说明:根据主题id,已分页形式返回产品列表
提交参数:
productId:产品Id pageNo:页码 pageSize:分页大小
返回参数:
{
"total":100,
"pageNo":1,
"pageSize":10,
"comments":[
{
"nickName":"b_小贝贝",
"time":"9月3日 15:23",
"face":"http://asdfasdf",
"content":"她家的包包看起来还不错,有谁买过的,求推荐!"
},
{
"nickName":"Blanch_213",
"time":"9月3日 15:53",
"face":"http://asdfasdf",
"content":"简单,但太普遍了!"
}
]
}
total:主题总数量
pageNo:分页用页码
pageSize:分页用每页数量
nickName: 用户昵称
time: 评论时间
face: 用户头像
content: 评论内容
18.获取浏览记录
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/user_record.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/user_record.jsp
请求方式:GET
是否需要登录:是
功能说明:获取用户浏览过的产品信息
提交参数:
common_session_id:common_session_id
返回参数:
{
userId: 1,
userName: "aaaaaaaaa",
products: [
{
id: 5,
name: "包邮宜家田园草编藤编抽柜床头柜简约地柜储物柜收纳柜斗柜带里衬",
src: "http://XXX",
link: "http://XXX",
vTime: XXXX-XX-XX,
tTime: 2152450
},
{
id: 6,
name: "包邮宜家田园草编藤编抽柜床头柜简约地柜储物柜收纳柜斗柜带里衬",
src: "http://XXX",
link: "http://XXX",
vTime: XXXX-XX-XX,
tTime: 2152450
}
]
}
userId: 用户id
userName: 用户昵称
products: 产品列表
id: 产品id
name: 产品名
src: 产品图片地址
link: 产品链接
vTime: 浏览时间
tTime: 停留时间
19.获取测试记录
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL: http://youpin.pchouse.com.cn/jsp/intf/user_testrecord.jsp
测试: http://dev10.pchouse.com.cn:8083/jsp/intf/user_testrecord.jsp
请求方式:GET
是否需要登录:是
功能说明:获取用户测试信息
提交参数:
common_session_id:common_session_id pageNo:页码 pageSize:分页大小
返回参数:
{
"total":100,
"pageNo":1,
"pageSize":10,
"items":[
{
"type": 1
"id": 1
"name":"天猫双十二真情回馈专题",
"src":"http://"
},
{
"type": 2
"id": 1
"name":"法丽莎家具 欧式床 实木床 田园婚床 双人床 1.8 1.5米",
"price":"¥2699.00",
"price2":"¥2000.00",
"src": "http://",
"favorite":1234
}
]
}
返回参数说明:
total:单品总数量
pageNo:分页用页码
pageSize:分页用每页数量
items: 搜索结果数组
type: 1为主题 2为产品 name:type为1时,是主题名;type为2时,是产品名
price:产品原价,仅当type为2时生效
price2: 折后价(可能为空),仅当type为2时生效
favorite:收藏数量
src: 图片(无须区分主题、产品)
20.猜你喜欢
猜你喜欢直接使用接口:4.搜索接口(搜索结果跟猜你喜欢的返回参数一样) 该搜索接口已经兼容。
21.浏览记录
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL:
请求方式:POST
是否需要登录:是
功能说明:发送用户删除的浏览记录
提交参数:
common_session_id:common_session_id productIds: 商品ID1,商品ID2,商品ID3
返回参数:
result:返回代码, msg:返回信息
22.收藏接口
原型 http://trac.pc.com.cn/mobile/pototype/ideas/youjiapin/req1.0.1/
URL:
请求方式:POST
是否需要登录:是
功能说明:用户删除收藏的产品
提交参数:
common_session_id:common_session_id, productIds: 商品ID1,商品ID2,商品ID3
返回参数:
result:返回代码, msg:返回信息
用户行为接口
家居优品项目希望通过对用户一些行为的收集,分析和识别出用户的一些特征。系统利用用户特征,能够较为准确的给网友进行商品推荐。系统主要对下列
用户的行为进行采集:搜索关键词、测试结果关键词、浏览商品、浏览主题、收藏商品。其中浏览商品和浏览主题的信息保存在客户端上,需要客户端提交给服务器, 其余信息在网友操作过程中,服务器能够自动采集。
浏览商品
采集频率:实时提交
数据格式:[{"mac-id":"004443fdd433434","uid":"233223","pid":"xxxxx","t-time":233]
mac-id:网卡的mac地址,必须提交。[[BR]] uid:登录用户的ID,未登录时为空。[[BR]] pid:商品ID[[BR]] v-time:商品页停留时间=离开商品终端页的时间 - 进入商品终端页的时间;单位是秒,毫秒尾数进行四舍五入。
存储方式:数据库
浏览主题
采集频率:实时提交
数据格式:[{"mac-id":"004443fdd433434","uid":"233223","tid":"xxxxx","t-time":2323}]
mac-id:网卡的mac地址,必须提交。[[BR]] uid:登录用户的ID,未登录时为空。[[BR]] tid:商品ID[[BR]] v-time:主题页停留时间=离开主题页的时间 - 进入主题页的时间;单位是秒,毫秒尾数进行四舍五入。
存储方式:数据库
Attachments
-
模板顺序.doc
(168.5 KB) -
added by hejingdong 13 years ago.
-
测试模板对应编号.doc
(2.3 MB) -
added by huozhenhua 13 years ago.
![(please configure the [header_logo] section in trac.ini)](http://www1.pconline.com.cn/hr/2009/global/images/logo.gif)