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的最顶部,实现类似下面的代码:
注意:需要用getQueryString(),不能用getParameter()
String queryString = request.getQueryString();
String reqEnc = getQueryValue(queryString,"req_enc=");
if(reqEnc!=null){
request.setCharacterEncoding(reqEnc);
}
String respEnc = getQueryValue(queryString,"resp_enc=");
if(respEnc!=null){
//out.println(respEnc);
response.setCharacterEncoding(respEnc);
}
String getQueryValue(String queryString,String key){
if(queryString==null || queryString.length()==0)return null;
int reqIdx = queryString.indexOf(key);//req_enc=utf-8&resp_enc=gbk
if(reqIdx!=-1){
reqIdx = reqIdx+key.length();
int endIdx = reqIdx;
for (;
endIdx < queryString.length() && queryString.charAt(endIdx)!='&';
endIdx++) {
}
if(endIdx>reqIdx){
return queryString.substring(reqIdx,endIdx);
}
}
return null;
}
4.所有有写操作的数据接口,必须用POST方式提交,在接口里需要判断提交方式,拒绝GET的调用请求。
5.接口中的JSON字符串,key都用双引号("")包裹,value是字符串类型时,也用双引号("")包裹;是数字类型时,不用引号。
6.需要登录的接口,cache-control=600 ;分开优先级低和主动请求两种,前者用cacheFirst,后者用noCache
接口URL: 接口URL
必填参数:参数名=xxx(多种情况用括号解析)
非必填参数:参数名=xxx(多种情况用括号解析)
说明文档参数:添加某特定参数可以直接看接口文档
是否需要登录:是,否
返回格式:json,ssi,xml
缓存方式:接口缓存,对象缓存
缓存时间:缓存时间
返回结果:结果可能情况
2.接口列表
2.1 头像以及昵称修改
修改昵称
接口URL:http://my.pcauto.com.cn/intf/syncNickName.jsp
必填参数:
act:save
nickName:昵称
提交方式:POST
是否需要登录:是
返回格式:json
缓存方式:无
缓存时间:无
返回结果:{"code":0}表示成功, {"code":非0,"message":"提示"}
修改头像
接口URL:http://upc.pcauto.com.cn/upload_head.jsp
必填参数:
无
提交方式:POST
是否需要登录:是
返回格式:json
缓存方式:无
缓存时间:无
返回结果: 成功:{retCode: 0} 失败:{retCode: xxx}