杂项
Google身份验证器
登入系统和关键操作时,系统会要求使用Google验证码
Google身份验证器会在您的手机上生成两步验证码。
两步验证通过登录时需要进行第二步验证来为您的Google帐户提供更强的安全性。除了密码外,您还需要手机上Google Authenticator应用生成的代码。
关于浏览器
本系统使用了较多的高级浏览器脚本,因此为了保证最佳使用体验,请使用最新版本的Google Chrome浏览器或火狐(FireFox)浏览器
签名方式
参数签名用于保证参数一致性,避免被篡改。
通过将参数按照规则组合,使用MD5 Hash算法得到签名。
具体步骤如下1
1. 将所有POST的参数按照字段名升序排序, 并组合成参数字符串:
paramString = "aparam=xxx&bparam=yyy&cparam=zzz&..."
注意:所有参数值前后不能含有空格、换行符和制表符并且都需要使用urlencode编码,并且编码结果转换为小写(不同语言urlencode结果可能为大写或小写,因为大小写MD5结果是不同的,因此统一转换为小写后,再进行MD5)
例如:
aparam=中文
编码为: aparam=%e4%b8%ad%e6%96%87
2. 在参数字符串末尾, 追加secret参数, 如下:
strToHash = paramString + "&secret=[商户的secret]"
3. 将第二步得到的结果进行md5加密
hashResult = md5(strToHash)
4. 将sign加入表单参数中,并提交完整表单 (注意:不包含secret)
1. 文档说明代码为伪代码,仅供了解流程,请使用开发者所用语言编写真实代码 ↩
全局接口返回说明
本系统所有商户主动请求的接口(除代收接口,参数returndataformat=clienthtml以外),均返回格式如下的JSON对象
{
"code": ...,
"results": ...
}
其中code
字段为数字,results
字段为任意类型的值
- 当接口调用成功时,
code
字段值为0,results为相应的接口返回结果对象或字符串。 - 当接口调用失败时,
code
字段值为非0,results为相应的失败原因描述字符串。
商户获得返回的JSON对象后,先根据code判断是否成功请求接口,如果成功,根据文档中对应说明取出数据,如果失败,则记录或显示results中的错误信息,并根据错误内容解决或联系技术人员处理。
注意:当code为非0,即接口调用失败,均为非业务级别的失败,大部分情况是由逻辑约束或异常数据造成,其意义并非业务执行失败。