美文网首页
iOS客户端连接易宝支付接口

iOS客户端连接易宝支付接口

作者: 捕梦少女的梦想 | 来源:发表于2017-05-16 13:14 被阅读0次

项目中接入了第三方的易宝支付,客户端需要查询用户绑定的银行卡,并进行解绑,所以需要直接请求易宝支付的java接口,过程中遇见了坑,特此记录。

接口文档说明如下:

接口文档关于传参的逻辑看结尾java代码。看了半天,终于理清了逻辑:

1.就是商户号和标识进行hmac拼接,hmac里面有一层加密;

需要传递的参数拼接成字符串,然后进行md5+密钥加密,赋值给hmac参数。

重点:单纯的进行md5加密是不可以的,必须+密钥。

2.进行customernumber、userno、hmac三个参数的AES加密操作;

把三个参数以字典转json字符串的形式,+密钥(取密钥前16位)进行AES加密。

重点:

1)我们在网上搜到的AES加密,算法类型都是kCCOptionPKCS7Padding,但是java接口的算法类型是ECB,这个bug不太容易发现,如果加密不对,就会导致后台解析错误。

2)后台需要的Data数据是16进制的,但是我们一般进行AES加密完之后的是NSData数据,一般会在进行Base64转换,这时我们需要改下,取消Base64转换,直接NSData转换成16进制数据。

3.就是设置data和customernumber传参了。

4.接口需要的参数很简单,所以写起来并不复杂,主要就是加密没问题,传参就没问题。

备注:易宝支付的接口文档中结尾附了一段java代码,附下图:

相关文章

网友评论

      本文标题:iOS客户端连接易宝支付接口

      本文链接:https://www.haomeiwen.com/subject/dcqlxxtx.html