安全相关

接口加密与校验

服务端采用加密,签名的方式来确保接口安全,支持两种类型的请求方式

签名方式

请求的 URL 后缀:*.scmd

在公共参数基础上增加以下参数

参数 是否必填 说明
sign 必填 数组摘要: MD5.digest(按照参数 key 的字典排序对应的值组成原串+ md5Key) 
st 必填 签名类型:m(md5)

说明:协议中,除了 sign 字段,默认都要参与数字签名。签名顺序按参数名称升序排序  参数中有中文的需要做 encode:URLEncoder.encode(params, ”UTF-8”) 特殊情况,另外说明。

sign参考:appId=TD0041&pid=getAccessToken&code=635e792484eb4f7abf2ac8f24ff02cb533340653756851653&st=m 例如:md5Key=xxxsign=MD5.digest(TD0041635e792484eb4f7abf2ac8f24ff02cb533340653756851653getAccessTokenmxxx) * 签名说明和示例 例如java:

Map<String, String> map = new HashMap<String, String>(); 
map.put("appId", "TD0041");
map.put("pid", "getAccessToken");
map.put("code", "635e792484eb4f7abf2ac8f24ff02cb533340653756851653");
map.put("st", "m");
List<String> keys = new ArrayList<String>();
for (String key : map.keySet()) {
  keys.add(key);
}
Collections.sort(keys);
StringBuffer stringBuffer = new StringBuffer();
for (String key : keys) {
  if (!"sign".equals(key)) {
    stringBuffer.append(map.get(key));
  }
}
String md5Key = "xxx";
String sign = MD5.digest(stringBuffer.toString() + md5Key);

错误码

错误码 说明
H.SYS.0000 系统异常!请稍后再试!
H.DEV.0001 设备信息不存在!
H.DEV.0002 应用版本为空!
H.DEV.0003 版本验证失败!
H.DEV.0004 设备ID为空!
H.DEV.0005 设备初始化失败!
H.USER.0001 用户不存在!
H.USER.0002 无效用户!
H.USER.0003 密码错误!
H.USER.0004 短信验证失败!
H.USER.0005 用户ID为空!
H.USER.0006 登录失败,请重试!
H.USER.0007 修改密码失败!
H.USER.0008 设置密码失败!
H.USER.0009 IMEI为空!
H.USER.0010 密码为空!
H.USER.0011 手机号为空!
H.USER.0012 验证码会话ID为空!
H.USER.0013 用户信息为空!
H.USER.0014 用户信息验证失败!
H.USER.0015 设置昵称失败!
H.USER.0016 用户取消操作!
H.USER.0017 验证码校验失败!
H.USER.0018 登录类型为空!
H.USER.0019 不支持的登录方式!
H.USER.0020 WOA访问异常!
H.USER.0025 用户昵称非法!
H.USER.0026 用户昵称包含非法字符!
H.USER.0027 手机号码格式错误!
H.USER.0028 appid和系统不对应!
H.USER.0029 x标识为空!
H.USER.0030 y标识为空!
H.USER.0031 不存在对应游戏url!
H.USER.0032 开放用户已存在!
H.USER.0041 非法参数!
H.USER.0045 手机号码为空!
H.USER.0046 验证码为空!
H.USER.0047 验证码不正确!
H.USER.0048 验证授权失败!
H.USER.0049 国家代码为空!
H.NET.0001 没有可用的网络!
H.NET.0002 网络信号不稳定!
H.USER.0051 短信发送太频繁了,请休息一会再试!
H.USER.0052 不是vip用户!
H.USER.0053 已经是vip用户!
H.USER.0054 内测码错误!
H.USER.0055 内测码已使用!
H.USER.0056 短信内容为空!
H.USER.0057 短信业务类型为空!
H.USER.0058 短信业务类型非法!
H.USER.0059 手机号不允许设置为昵称
H.USER.0060 授权码错误
H.USER.0061 ip受限
H.RISK.0016 本服务暂停使用,请将系统更新至iOS 9.0后。去APP STORE 下载最新版本。
H.USER.0063 短信验证太频繁,请休息一会儿再试!
H.USER.0064 您今天短信验证次数已超出限制,请明天再试!
H.USER.0065 获取授权Key太频繁,请稍后再试!
H.USER.0066 您今天的授权次数已超出限制,请明天再来!
H.USER.0072 批次查询数据超过最大限制,请求数:{0},最大批次:{1}
H.USER.0073 请求UHID列表存在空值;