小程序微信支付API V3对接(Java)
前言
提示:以下是本篇文章正文内容,下面案例可供参考
一、微信支付商户平台
在【API安全】里需要申请API证书(后需要用的私钥就是这个红框里的)、设置APIv3密钥
在【开发配置】里需要配置合法域名 在【AppID账号管理】里需要绑定小程序的AppID
二、代码
1.小程序调起支付
timeStamp:时间戳(只需要到秒,如果获取的是毫秒级需要除以1000) nonceStr:随机字符串(不长于32位) package:订单详情扩展字符串(prepay_id=……) signType:签名方式(仅支持RSA) paySign:签名(使用字段appId、timeStamp、nonceStr、package计算得出的签名值)
wx.requestPayment({ timeStamp: , nonceStr: , package: , signType: , paySign: , success: (result) => { }, fail: () => { }, complete: () => { } });
2.后端代码
Maven依赖:
<dependencies> <dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpclient</artifactId> <version>3.1</version> </dependency> <dependency> <groupId>org.bouncycastle</groupId> <artifactId>bcprov-jdk16</artifactId> <version>1.46</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.9</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency> <dependency> <groupId>com.github.wechatpay-apiv3</groupId> <artifactId>wechatpay-apache-httpclient</artifactId> <version>0.4.7</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.12.5</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.12.5</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>2.12.5</version> </dependency> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.3.10</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>1.7.25</version> </dependency> </dependencies>
PayUtil支付工具类:
3.异步通知【回调】(以支付回调为例)
总结
几个常用的方法都已经封装在PayUtil工具类中,使用的时候根据官方文档传参即可,也可根据需求进行修改。
上一篇:
uniapp开发微信小程序-2.页面制作
下一篇:
PHP后台,微信小程序退款流程