当前位置: 首页 > news >正文

开发指南027-微信支付

        订单信息分为两层,业务层和微信层,业务层保留订单的详细信息,微信层只有总金额信息。业务层平台不关心,只提供微信层的封装方法。

        需引入微信支付包:

<groupId>com.github.wechatpay-apiv3</groupId>
<artifactId>wechatpay-apache-httpclient</artifactId>
<version>0.3.0</version>

        整体流程如下:

        1) 调用相关业务接口创建业务层订单。

             这部分根据业务自行实现,没有要求。

        2)调用平台微信支付接口创建订单

              平台提供给业务端的是jar包:

<groupId>org.qlm</groupId>
<artifactId>qlm-utils-wechart</artifactId>
<version>1.0-SNAPSHOT</version>

       提供jar包而不是微服务接口的原因是:1 微信支付相关参数不同业务是不同的,要配置在业务的配置文件里;2 可以和上面第一步集成在同一个接口里,前端只需要调用1次。

        public WxPayInfoDto createOrder(String openid,String orderId,String title,long total)

        需要的配置如下:

qlm:

   wechart:

       appId: 

       appSecret: 

       merchartid:

       miniPayNotify:

        3)前端调用微信支付

          拿到WxPayInfoDto后前端调用相应接口。

        4)微信调用回调接口返回结果

             回调接口是在创建微信订单过程中传过去的参数

相关文章:

  • HR招聘面试测评,测评候选人的语言和表达能力
  • 数字化转型中存在的五大问题:意识、供给、成本、能力、竞争力培育
  • Linux命令locate:快速定位文件与目录
  • IO转换流
  • EasyRecovery数据恢复软件具有哪些功能特点?2025版本啥时候更新
  • 大数据学习问题记录
  • 一文读懂筛选控件设计
  • Python深度学习基于Tensorflow(16)基于Tensorflow的对话实例
  • python中有时使用pip安装库而有时又使用conda安装库,到底应该使用哪个管理工具进行库的安装呀?
  • SVG画双色虚线并带有流动效果
  • Java - 随机存取文件类
  • c++自定义定时器
  • Flutter基础 -- Flutter容器布局
  • 【Redis】Hash介绍与应用详解
  • Huawei 大型 WLAN 组网 AC 间漫游
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • JavaScript-如何实现克隆(clone)函数
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 2017 年终总结 —— 在路上
  • Apache Zeppelin在Apache Trafodion上的可视化
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • Docker容器管理
  • Flannel解读
  • golang中接口赋值与方法集
  • Material Design
  • VuePress 静态网站生成
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 如何解决微信端直接跳WAP端
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 学习使用ExpressJS 4.0中的新Router
  • 一个完整Java Web项目背后的密码
  • 怎么将电脑中的声音录制成WAV格式
  • ​一文看懂数据清洗:缺失值、异常值和重复值的处理
  • # 消息中间件 RocketMQ 高级功能和源码分析(七)
  • #图像处理
  • ${ }的特别功能
  • $GOPATH/go.mod exists but should not goland
  • (4)事件处理——(7)简单事件(Simple events)
  • (定时器/计数器)中断系统(详解与使用)
  • (附源码)计算机毕业设计SSM基于健身房管理系统
  • (南京观海微电子)——I3C协议介绍
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...
  • .axf 转化 .bin文件 的方法
  • .net core 实现redis分片_基于 Redis 的分布式任务调度框架 earth-frost
  • .net wcf memory gates checking failed
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件
  • .netcore 获取appsettings
  • .NET开源快速、强大、免费的电子表格组件
  • .NET使用存储过程实现对数据库的增删改查
  • /*在DataTable中更新、删除数据*/
  • @zabbix数据库历史与趋势数据占用优化(mysql存储查询)