第三方接口对接
鉴权
记录一次和第三方接口对接的过程。
对接要求
对方的接口做了加密验证,需要将参数进行加密生成一个Signature签名。然后对方也会根据参数做一样的步骤来比对签名是否相等来判断参数是否被篡改或者判断身份是否一致。
对方提供了以下几个参数:
accessKey
: 和参数进行混合的keyaccessSecret
: 进行base64编码的时候的密码dateTime
: 密钥生成的时间,对方文档会标注根据该时间来判断接口的有效时间。比如5分钟内该参数是有效的,超过5分钟对方就认为这个请求已经过期了。randomNumbers
: 随机数password
: DES加密的密码
加密的类型:
明文参数:
- 手机号码 : 需要通过DES进行加密,加密的密码为上面提供的password。
密文参数:
首先拿到明文参数
参数的顺序必须一致:例如一段json字符串数据,里面的key必须按照a-z不区分大小写的顺序进行排列。
除了业务参数,还有通用参数:
accessKey
、dateTime
、randomNumbers
等等加入到参数字符串中。所有的key对应的value必须要经过URLEncoder