springBoot微信支付(native)基本使用
不做太多判断什么的,就是单纯支付,剩下的自己完善,更开始学的时候我还是喜欢这样,不容易和其他知识弄混
pom.xml
<!-- wxpay的依赖 --><dependency><groupId>com.github.wxpay</groupId><artifactId>wxpay-sdk</artifactId><version>0.0.3</version></dependency>
1,创建一类,实现WxPayConfig接口
2, 重写三分方法,分别设置商户AppID\商户ID\商户密钥
package com.qfedu.config;import com.github.wxpay.sdk.WXPayConfig;
import org.springframework.stereotype.Component;import java.io.InputStream;//在这个配置类中填写商户信息
@Component
public class MyWxPayConfig implements WXPayConfig {@Overridepublic String getAppID() {return "wx632c8f11111111111111111211f8122c6";}@Overridepublic String getMchID() {return "12222222222222222222";}@Overridepublic String getKey() {return "sb33333333333333333GxFnC";}@Overridepublic InputStream getCertStream() {return null;}@Overridepublic int getHttpConnectTimeoutMs() {return 0;}@Overridepublic int getHttpReadTimeoutMs() {return 0;}
}
2.5.2.3、修改订单添加接口
这里按照微信支付规范需要做如下工作:
- 设置申请支付交易的参数
- 申请支付链接
package com.mall.controller;import com.github.wxpay.sdk.WXPay;
import com.mall.beans.RespBean;
import com.mall.config.WxPayConfig;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;
import java.util.Map;/*** <p>* 订单 前端控制器* </p>** @author wei* @since 2021-11-07*/
@Api(tags = "订单接口")
@RestController
@CrossOrigin
@RequestMapping("/orders")
public class OrdersController {@Autowiredprivate WxPayConfig wxPayConfig;@ApiOperation("微信支付")@PostMapping("/pay")public RespBean add() throws Exception {//微信支付//设置申请支付交易的参数HashMap<String, String> data = new HashMap<>();data.put("out_trade_no", "123gduiaa"); //交易号,使用订单编号作为支付交易的交易号data.put("body", "百年孤独"); //body 支付交易的订单描述data.put("total_fee", "1"); //total_fee 支付金额 分data.put("fee_type", "CNY"); //fee_type 支持币种 CNY 人民币data.put("trade_type", "NATIVE"); //trade_type 交易类型data.put("notify_url", "http://zrx.free.svipss.top/wxpay/callback"); //notify_url 支付成功之后支付平台通知地址(回调接口)//申请支付链接WXPay wxPay = new WXPay(wxPayConfig);Map<String, String> resp = wxPay.unifiedOrder(data);String payUrl = resp.get("code_url");System.out.println(resp);// 返回很多数据,最重要的就是code_url,打开连接,就是支付码//{nonce_str=jEZ8aIzvGT46sUlA,// code_url=weixin://wxpay/bizpayurl?pr=9geXpbYzz,return new RespBean(200, "success", payUrl);}
}
复制这个连接,随便去到二维码生成器,打开微信扫一扫即可完成支付
前端使用
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<div id="app"><h3>订单支付页面</h3><hr/><div style="width: 200px; height: 200px; border: 1px lightgray solid; border-radius: 5px; padding: 10px;"><div id="payQrcodeDiv" style="width: 200px; height: 200px; background: aqua;">{{tips}}</div></div>
</div><script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/qrcodejs/1.0.0/qrcode.js"></script>
<script>let app = new Vue({el: "#app",data: {payUrl: 'weixin://wxpay/bizpayurl?pr=sC2QNfuzz',tips: '',count: 3},mounted() {let qrCode = new QRCode(document.getElementById('payQrcodeDiv'), {width: 200,height: 200})qrCode.makeCode(this.payUrl)}})
</script>
</body>
</html>
springBoot微信支付(native)基本使用相关推荐
- PC网站微信扫码支付,Native支付,“当前商户号暂不支持关联该类型的appid“,“签名错误,请检查后再试““springBoot 微信支付“
springBoot 微信支付 PC网站微信扫码支付-Native支付 一.采坑大合集 1.当前商户号暂不支持关联该类型的appid 2.签名错误,请检查后再试 二.springboot集成微信支付D ...
- SpringBoot整合微信支付(Native最详细)
一.微信支付产品介绍 1.付款码支付 用户展示微信钱包内的 " 付款码 " 给商家,商家扫描后直接完成支付,适用于线下面对面收银的场景. 2.JSAPI支付 线下场所:商户展示一个 ...
- springboot微信支付pc页面生成二维码
微信支付开发文档:https://pay.weixin.qq.com/wiki/doc/api/index.html 咱们这次采用的是Native支付 Native支付使用场景:用户打开"微 ...
- JAVA 微信支付 native方式
最近做了一个微信native方式支付的demo,整理一下. 首先到微信公众号官网阅读开发文档,虽然文档对于java没有例子,但是也可以作参考.https://pay.weixin.qq.com/wik ...
- 微信支付Native下单API接口正确调用姿势
商户Native支付下单接口,微信后台系统返回链接参数code_url,商户后台系统将code_url值生成二维码图片,用户使用微信客户端扫码后发起支付. 文档地址:微信支付-开发者文档 目录 一.N ...
- WxJava springboot微信支付商户直连分账使用总结
最近在做共享洗车小程序中有些店铺是采用按用户充值比例分账的模式和店主合作,故此记录下分账模式的使用. 建议先在官网看一遍大概流程 微信支付-分账-官网链接 准备工作 登录微信支付商户,设置好V3密匙 ...
- SpringBoot+微信支付
目录 前言 1.pom中引入库 2.application.properties 3.service 4.实现类 5.Controller 总结 附De
- 在线支付系列【14】微信支付实战篇之Native支付下单
有道无术,术尚可求,有术无道,止于术. 文章目录 Native支付 产品介绍 业务流程图 1. 下单 2. 支付 3. 并行处理 Native下单API 案例演示 1. 环境搭建 2. 创建商户订单 ...
- 微信支付,JSAPI支付,APP支付,H5支付,Native支付,小程序支付功能详情以及回调处理
一.支付相关文档地址 支付wiki:https://pay.weixin.qq.com/wiki/doc/apiv3/index.shtml 支付api: https://pay.weixin.qq. ...
- Java接入微信支付超级详细教程——从入门到精通
源码下载 源码获取邮箱:xiaoshu1024@qq.com 本文介绍了"二维码付款"的代码.其他微信支付方式的代码都在源码中. 一.准备开发所需的账号以及配置信息 解释:想要接入 ...
最新文章
- linux定时任务简记
- 最小生成树(kruskal+prime)
- 连接一切:自媒体的未来是什么??
- 计算机键盘输入法基础知识,教程计算机基础知识-:认识输入法
- sass调试--页面看到sass文件而不是css文件问题
- 我一定要让所有人都知道awk这个实用操作
- 好看的按钮集合HTML + CSS各种好看按钮组件
- 复星旅文冲刺港交所:上半年营收66亿 核心收入来自度假村
- 英语影响计算机专业,英语不好对于学习计算机编程来说到底有没有影响?
- mysql查询各科成绩前三名_No.03 数据库经典面试之如何取出每科成绩的前三名
- 固态硬盘怎么看出厂日期_固态硬盘使用时间怎么看,固态硬盘寿命计算方法
- 龙之谷服务器列表不显示,龙之谷服务器列表,龙之谷服务器列表弹不出来
- 第108章 属性关键字 - Required
- Hardhat创建、编译、测试智能合约
- 基于html5贪吃蛇小游戏,H5 canvas实现贪吃蛇小游戏
- Error launching IDEA
- 《罗曼蒂克消亡史》影评
- 说说北大软微那些事儿
- FLASH知识及读写擦除规则
- 50和学习c/c++优秀网站
热门文章
- 体验极速Android SDK的更新与下载
- JSON 之 SuperObject(8): 关于乱码的几种情况 - 向 Henri Gourvest 大师报告
- 天题系列:Substring with Concatenation of All Words
- C语言内存地址对齐详解
- python+selenium 实现完全控制浏览器
- 连锁加盟网站源码_连锁60秒:招商只是开始,养商才最重要
- 拓端tecdat|R语言文本挖掘tf-idf,主题建模,情感分析,n-gram建模研究
- nodejs实战mysql_node.js实战:手把手教你使用mysql
- 【图像处理】双边滤波算法(bilateral filter)和导向滤波算法(guided filter)
- Ubuntu16.04下keras安装