微信公众号支付 jssdk ,后端 laravel + easywechat,前端 uniapp

前提:商户号,各种授权域名 ,app_id api_key 证书 等,都已配置好了。

不会配置的参考官方文档:

https://pay.weixin.qq.com/wiki/doc/apiv3/open/pay/chapter2_1.shtml

 

主要流程

  1. 前端:用户点购买按钮

  2. 前端:初始化jssdk

  3. 前端:调用后端接口,尝试生成预支付订单。

  4. 后端:生成预支付订单(比如订单的金额,编号,商品)。调用微信统一下单接口,成功后返回给前端

  5. 前端:收到后端返回的参数。使用这些参数,发起支付,此时出现支付的界面

  6. 用户输入密码,支付成功

  7. 微信回调后端接口,后端接收到微信的回调后,处理业务,比如修改订单状态为已支付。

 

代码截图,上面的每一步流程,都标注在代码中了:

前端代码(uniapp uviewui)

后端代码:laravel+easyWechat

后端接口:…/jssdk-config,用于返回给前端,初始化jssdk的参数

 

后端接口:…/buy-card (我这个业务场景就购买会员卡,所以起的这个名字)

 

WxPay类中的 unipay方法

 

支付成功后的回调

微信会以post方式,发来一段xml,只要拿到了这个返回数据,一切就很好办了。

注意是post,是post!之前我写成get了,导致一直收不到回调,折腾了好久!

在laravel中,是这样获取的:

$content = request()->getContent();//得到xml字符串。看业务需要,easyWechat是已帮我们处理好了的。

 

我的业务代码,仅供参考

 

WxPay 的 callBack方法

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/255271.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

微信公众号基础04_分享和录音功能的实现

本文简单说明一下微信测试号分享和录音功能的调用,其他JSSD功能与这类似 参考:微信JS-SDK文档 http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html#.E8.8E.B7.E5.8F.96.E2.80.9C.E5.88.86.E4.BA.AB.E7.BB.99.E6.9C.8B.E5.8F.8B.E2.8…

【22-23 春学期】AI作业12-LSTM

网络 LSTM(输入门、遗忘门、输出门) LSTM(长短时记忆网络)是一种特殊的RNN(循环神经网络),能够学习长期的依赖关系。它通过原始 RNN 的隐藏层只有一个状态,它对于短期的输入非常敏感…

强推宝藏网站

最近还是有很强烈的感受,方法大于努力。最近就整理了一下大学期间比较好用的网站,也陪我度过了一段时间了,排名不分先后,把压箱底的东西拿出来了。 ChatGPT WeTab 新标签页https://www.wetab.link/ChatGPT国内免费使用方法有哪些…

AutoCAD三维建模图——汽车车轮

点击前往下载链接 AutoCAD三维建模图——汽车车轮,超真实,带胎路纹理,轮毂钢圈等等 橡胶轮胎建模,钢圈 胎路纹理 轮毂,螺丝,线条 展示图 展示图

CAD轴测图怎么画,才能不踩坑?

CAD轴测图怎么画?相信从事机械设计、产品设计的小伙伴,对于CAD轴测图并不陌生。CAD轴测图凭借立体感强、直观性好等特点,常作为产品设计制图的辅助图样,用来帮助人们读懂正投影视图,展示产品的整体结构特征。那么如何在…

cad超级排孔_家具cad排孔图 爆破排孔图

求一张板式家具CAD图,设计图,下料,排孔,安装图。 此外... 您可以使用正方形软件绘制家具效果图,可以使用3d max,还可以使用AUTO CAD绘制平面图、剖面图、效果图和三维线图。如果想省事,可以弄个…

【CAD3D】0基础绘制立体模型

一、需求 使用autocad软件绘制一个15.6寸裸屏立体模型。 二、操作 2.1建立文件 打开cad软件,点击左上角空白文件图标新建一个文件,会弹出选择样板窗口。选择acad3D.dwt样板,用于绘制3维模型。仅显示名称,不用理会。点击打开后创…

cad怎么表示出一个孔_AutoCAD如何画一个带孔的立体球

原标题:AutoCAD如何画一个带孔的立体球 第一步,在AutoCAD2007中操作菜单“绘图”→“建模”→“球体”,命令行窗口提示“指定中心点或 [三点(3P)/两点(2P)/相切、相切、半径(T)]:”,在模型空间任意位置点击鼠标;命令行窗口接着提示“指定半径或 [直径(D)]:”,键入“50”…

cad快看_CAD三维这样材质贴图,你学会了吗 ?

▲ 点击“CAD教学”,获取海量学习资料和免费教程 CAD画好三维图后,如果想给它贴图上大理石材质大概看一下效果如何,可以这样操作 ▲画好的三维图 1、点击菜单栏的视图——渲染——材质浏览器。 2、弹出的窗口中点击左下角这个+号按钮。 3、如果需要两种材质以上,可以选择新…

如何应用迅捷CAD编辑器,来绘制一份立体图形。

在CAD设计,为了效果的显著性,经常会用到关于CAD立体图形的绘制,立体图形要知道,是运用三维看图才能显示出来的,现在的CAD绘图软件也都有了关于CAD立体三维图形绘制的功能,那具体是怎么运用的呢?…

cad角度怎么画_初学入门CAD,就这样成精了!

经常有朋友问我怎么学习CAD,或者要求学习CAD,所以我觉得有必要把与学习CAD有关的几个问题阐述一下,以帮助想学者和初学者。还有朋友不知道知识兔吗?知识兔就等于学习,公主号超乎想象,学课程,下载…

Python 用turtle画房子

二层小阁楼 最近作业写的小例子,还可以,不算太丑。 效果如下: 代码如下: import turtle as t import time def go(x,y):t.penup()t.goto(x,y)t.pendown()def rangle(h,w):t.left(180)t.forward(h)t.right(90)t.forward(w)t.left(-90)t.fo…

使用UE4画刷BSP创建房子

UE4系列文章目录 文章目录 UE4系列文章目录前言一、步骤1. 在场景中添加地板2.添加房子盒体3.添加角色机器人到场景中4.给房子加一个门5.把房子挖空6.给房子加一层中间隔板7.给房子加楼梯8.添加窗户9.给房子添加材质9.给房子中添加一些小道具10.把房子变成一个整体 注意添加碰撞…

python turtle画房子详细解释_简述python的turtle绘画命令及解释

一 基础认识 turtle库是python的标准库之一,它是一个直观有趣的图形绘制数据库,turtle(海龟)图形绘制的概念诞生1969年。它的应用十分广,而且使用简单,只要在编写python程序时写上import turtle即可。 1.绘图窗口设置命令 turtle.setup(650,350,200,200):参数从左到右依…

如何用HTML制作一个房子,一分钟,教会你农村自建房该怎么设计!小白学了都能上手画出设计图!...

10*15宅基地怎么设计好?两室一厅农村自建房怎么设计?二层自建房怎么设计? 现在很多人都是自己设计农村自建房的图纸,但福居库发现,多数图纸是不合格的,可以说是随手画的,把自己想要的空间拼凑上去就完事了,很少去考虑到布局是否合理、居住是否舒适、是不是适合居住等问…

python turtle画房子代码里面的窗子,如何用python画房子_用python画一个小房子

如何用python画一个小房子? 效果图如下: 代码如下: import turtle # 前置 p = turtle.Pen() # 作者要说的话 for i in range(6): print(请把画板最大化,否则会影响画面效果!) # 设置笔的速度 p.speed(10) # 开始画画 p.pencolor("#F4A460") p.penup() p.goto((-…

canvas全局合成画月牙_画房子一日营 | 园林设计写生系列课程

画房子导师刘畅绘 暑假来啦,打算窝在空调房当乖宝宝? 当然不! 画房子的园林空间绘画写生课,刚好适合你! 01 为什么要在园林中绘画? 中国古典园林独步世界,曾被著名建筑学家童雋先生称为“三维的…

HTML绘制小房子,简笔画教程怎么画小房子

房子是很多人刚学画画的时候较为爱画的,画起来也算是比较的简单,简笔画也是幼儿们非常喜欢的绘画方法,爸爸妈妈们可以多陪陪孩子画一画简笔画,那么房子简笔画怎么画?下面我们就一起来看看小房子简笔画图解教程。 绘图工具&#x…

计算机绘画小房子教案,中班绘画《房子》教案

中班绘画《房子》教案 作为一名专为他人授业解惑的人民教师,常常要根据教学需要编写教案,教案有助于学生理解并掌握系统的知识。如何把教案做到重点突出呢?以下是小编整理的中班绘画《房子》教案,欢迎大家借鉴与参考,希…

怎么用python画房子_如何用Python画一颗小树?

1.代码的结构: 本代码有两个子函数组成,有main函数和画树函数组成。 2.编写画树函数: 画树函数,就是用来画出我们的树的一种子函数,代码如下:def tree(plist,l,a,f): if l>5: lst[] for p in plis…