欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

支付宝集成

程序员文章站 2022-05-30 21:40:41
...

集成步骤:

  • 1.【申请APPID】在蚂蚁金服开放平台上,创建一个项目,申请到APPID
  • 2.【导入SDK】按照开发文档,导入支付宝SDK及相关文件,并进行代码混淆配置
  • 3.【获取orderInfo】将订单相关信息,通过接口发送到自己服务器,服务器进行RSA加密后,返回给客户端一个字符串orderInfo,作为支付API的参数
  • 4.【调用API】客户端,开启一个子线程去调用支付宝SDK的API,如果客户端装有支付宝APP,则进行支付宝客户端的相关支付流程;如果没有装,则跳转H5页面进行支付。支付完成后,显示支付结果
  • 5.【支付结果】支付成功后,在蚂蚁金服开放平台上配置的回调接口会notify服务器端,然后服务器端修改订单状态,返回给客户端,客户端获取更新后的新信息并展示

集成过程中的几个坑:

  • 1.【orderinfo的坑】一开始测试,我是在客户端生成orderinfo的,参照的是官方的支付Demo,结果不能跑通,断点调试,发现错误发生在SignUtils中的sign方法的最后一步
return Base64.encode(signed);

网上调查,有人说是支付宝版本问题。在SignUtils中作如下修改,

KeyFactory keyf = KeyFactory.getInstance(ALGORITHM);
KeyFactory keyf = KeyFactory.getInstance(ALGORITHM,"BC");
  • 2.【APPID的坑】调试的时候,记得开启沙箱环境,使用沙箱环境下的APPID
  • 3.【RSA公私钥的坑】按照开发文档,在平台上下载一个RSA的生成器,生成公私钥后,将公钥上传开放平台,私钥放在Demo下