安全相关
接口加密与校验
服务端采用加密,签名的方式来确保接口安全,支持两种类型的请求方式
签名方式
请求的 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列表存在空值; |