Springboot整合微信支付
官方文档地址:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html
注意: 调用微信第三方链接Api必须使用xml格式请求才能获取数据,最终再将xml格式转换成对象,这里给大家提供了HttpClient工具类,需要大家自行在本博客其他文章中获取!
业务流程:
一、生成微信支付二维码
1、申请开通微信支付
获取以下内容:
2、引入依赖
<dependency>
<groupId>com.github.wxpay</groupId>
<artifactId>wxpay-sdk</artifactId>
<version>0.0.3</version>
</dependency>
3、定义接口
//生成微信支付二维码接口
//微信支付
@GetMapping("/createNative/{orderNo}")
public R wxPay(@PathVariable String orderNo) {
//返回相关信息 二维码地址和其他信息
Map map = payLogService.createNative(orderNo);
//自定义封装的统一返回结果(可查看博客获取)
return R.ok().data(map);
}
4、业务实现
注意:
1、未标注自定义的都是微信Api使用的默认key和value不可以随意设置
2、HttpClient为工具类,请自行到博客中查找工具类文章获取
public Map createNative(String orderNo) {
try {
//1、根据订单号查询出订单信息
TOrder order = orderService.getOne(new QueryWrapper<TOrder>()
.lambda().eq(TOrder::getOrderNo, orderNo));
//2、使用map设置生成二维码需要的参数
Map m = new HashMap<>();
//1、设置支付参数
//关联的公众号(微信方提供)
m.put("appid", "wx74862e0dfcf69954");
//商户号(微信方提供)
m.put("mch_id", "1558950191");
//设置签名(微信方提供Api)
m.put("nonce_str",