一款轻量的支付宝支付组件
来源:互联网 发布:ps3网络设定 编辑:程序博客网 时间:2024/05/20 03:06
Alipay
轻量的支付宝组件(A Lightweight Alipay Component)
包引入:
<dependency> <groupId>me.hao0</groupId> <artifactId>alipay-core</artifactId> <version>1.2.0</version></dependency>
业务系统与支付宝系统交互图:
基本用法:
Alipay alipay = AlipayBuilder .newBuilder(merchantId, secret) .config1(...) // 其他可选配置 ... .build();alipay.module().api();
已实现的组件:
- 支付
pay()
; - 退款
refund()
; - 验证
verify()
。
- 支付
API文档这里。
关于测试: 测试用例中是一些基本测试,alipay-demo项目是一个可运行web项目,方便测试,可按如下步骤进行测试:
复制alipay-demo中的
app-example.properties
为app.properties
,并作相应配置:## 支付宝商户编号merchantId=## 支付宝密钥secret=## 支付通知urlpayNotifyUrl=${your_domain}/notifies/backend## 退款通知urlrefundNotifyUrl=${your_domain}/notifies/refund## web支付完成页面跳转urlwebReturnUrl=${your_domain}/notifies/web/frontend## wap支付完成页面跳转urlwapReturnUrl=${your_domain}/notifies/wap/frontend
注意:除了
webReturnUrl
,wapReturnUrl
可以配置为localhost
外,payNotifyUrl
和refundNotifyUrl
都应该配置为支付宝可以外网调用的地址,本地测试建议使用ngrok工具来作本地外网映射。到alipay-demo根目录运行以下命令即可:
mvn clean jetty:run -Dmaven.test.skip -Djetty.port={自定义端口号}
WEB支付可访问(请求正常后,应该会跳到支付宝收银台页面,完成支付后,过几秒页面会跳转到
webReturnUrl
,console里也会有服务器通知的日志出现):http://localhost:{port}/pays/web?orderNumber={自定义订单号}
WAP支付可访问(请求正常后,应该会跳到支付宝收银台页面,完成支付后,过几秒页面会跳转到
wapReturnUrl
,console里也会有服务器通知的日志出现):http://localhost:{port}/pays/wap?orderNumber={自定义订单号}
退款可访问(退款成功后,也会有服务器通知日志打印):
http://localhost:{port}/refunds/submit?batchNo={自定义批次号}&tradeNo={服务器通知日志中的tradeNo}
APP支付:
- 客户端支付未亲测;
- 支付成功后,支付宝的通知数据RSA校验已测试通过。
相关文档:
- 即时到帐;
- WAP支付;
- APP支付。
历史版本:
1.0.0:
- 基本功能实现。
1.0.1:
- 必要参数校验。
1.0.2:
- 升级最新common组件;
- 参数校验简化。
1.0.3:
- 在alipay-demo中判断交易状态,web,wap只会在交易成功后通知,app还会在交易创建后作通知.
1.0.4:
- APP支付增加body和goodsType参数。
1.0.5:
- APP支付必须构参body
- 配置可选secret
1.0.6:
- 单元测试编译错误.
1.0.7:
- APP支付sign进行encode.
1.0.8:
- APP支付goodsType参数可选.
1.0.9:
提升代码质量
- DevFactory/release/silly-quality-checks-should-be-removed-fix-1
- DevFactory/release/general-cod-quality-fix-1
1.0.10:
- 移除paymethod参数, 均使用默认支付方式directPay.
1.1.0:
- PC支付增加extra_common_param参数.
1.2.0:
- PC支付增加anti_phishing_key参数, 防钓鱼.
Github地址
0 0
- 一款轻量的支付宝支付组件
- 一款轻量的微信支付组件
- Java开源:wepay-轻量的 Java 微信支付组件
- 一款轻量的微信公众号组件
- 一款轻量的分布式配置管理平台
- 支付宝的支付方式
- 支付宝支付的错误代码
- 支付宝的支付保卫战
- 支付宝的支付流程
- 支付宝的支付流程
- 支付宝支付的流程
- 支付宝的app支付
- 支付宝的支付流程
- simple_log 一个轻量的c++日志组件
- Vue.js:轻量高效的前端组件化方案
- Vue.js:轻量高效的前端组件化方案
- Vue.js:轻量高效的前端组件化方案
- app支付--支付宝支付
- Qt:VS&QT 配置OpenGL
- 文章标题
- 10203
- variable in while loop between ksh vs. bash
- 我的vim配置
- 一款轻量的支付宝支付组件
- 指针与非指针的交换函数
- java编程思想读书笔记 第十五章 泛型(上)
- LeetCode 415. Add Strings
- GsonBuilder导出null值、格式化输出、日期时间
- springmvc定时任务
- Usery用户情景与用例规约
- ADC实验
- 微信小程序日记——高仿知乎日报(上)