fastadmin 配置微信支付,实现微信公众号里面调起微信支付

2023-11-28 09:40

本文主要是介绍fastadmin 配置微信支付,实现微信公众号里面调起微信支付,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

需求:用fastadmin做后台,开发一个微信公众号后台。实现在微信公众号里面的微信支付。

1.首先配置公众号:在后台的插件管理里面的微信管理,填上相应的值即可。如图:

暂时不知道登录回调有啥用。

2.微信公众后台的配置:如图:

注:url未固定的。token要与后台的配置一样。

 

 

3.还有就是微信公众号设置里面:如图:

 

4.最后还有ip白名单,别忘了:如图:

ok,以上就是微信公众号的配置。顺序有点乱,第二步,应该是最后一步。其他顺序无关。

但是只要不出问题,就可以配置成功了。

接下来就要说重点了,实现微信公众号内的微信支付。

1.首先还是后台插件的配置:微信支付宝整合插件的配置,如图:

注:是需要本公众号认证的主体,申请的商户号。所以这里的app_id和app_secret应该要与微信公众号配置的一模一样!丝毫不差!我这里只会用到在微信公众号调起微信支付,所以,只填写了mch_id和key两个参数就可以了。

2.打开官方文档,先浏览一遍,然后copy代码,调起微信支付

官方文档连接:https://www.fastadmin.net/store/epay.html

我在项目中copy过来如下所示:

这里我来解释几个参数,先去看看文档里面,官方对参数的解释。(未解释的参数,参考官方文档的解释):

1.我这里是“微信公众号里面发起的微信支付”,我多次强调了我的需求是“微信公众号里面调起微信支付”。所以method参数为“web”。

2.然后还必须填写的参数openid。这个openid是啥,就不解释了。

3.returnurl,就是你支付完成同步跳转的页面,就是个页面跳转,你可以是www.baidu.com(支付完成跳转到百度)。也可以是www.qq.com之类的。正常情况,我们都应该填自己的订单列表或者当前订单详情页吧。牢记:只是页面跳转,没有重要的逻辑处理。

4.最后,最重要的参数:notifyurl:支付回调地址。

首先,解释一哈,支付回调。这里是,支付异步回调,就是在你支付完成的同时,微信会异步访问你提供的这个地址,并且,传给你一大包的支付后的参数(可以是支付成功返回的参数,也可以是取消支付返回的参数)。所以,这个地址必须是外网可以直接访问的,不能是127.0.0.1,必须是可以正常访问的,这点极为重要。然后,请仔细看我填写的notifyurl内容,最后有个:/paytype/wechat。这是个参数,因为这个插件是微信支付和支付宝支付的整合插件,所以它就要传一个paytype的参数,来区分是微信支付还是支付宝支付。我这里当然是填wechat啦。其实看下它发起支付的源代码,你就明白了:如图:

这里我就捡了个撇脱(图方便),直接指向了官方的回调地址,就直接找到了官方回调的地址文件。此文件的地址为:如图:

里面有个叫notify的方法,就为回调方法了。如图:

因为我的notifyurl指向的就是这个文件下的这个方法,所以我就直接在里面写了支付后的逻辑了。

当然官方说的,仅供测试,意思是最好还是自己copy到别的地方,然后那个notifyurl参数填上指向这个方法,也是可以的。但我就直接在里面写了支付后的逻辑了。

这里是异步回调,所以极为不好调试,我就用了个比较笨的方法,插入数据库,看数据库的东西,从而来判断到底是哪里出错,当然,推荐是写入日志的方法。

ok。本文就要结束了。

其实只要按照这篇文章来配置微信支付,参数不要填错,细节要写对。基本就没啥问题。你如果也是在微信公众号里面调起微信支付的话,直接按照我的步骤,就可以实现了。当然写这篇博客前,我自己去配置参数,调起支付,是遇到了很多问题的,而那些问题,我就不一一赘述了,我只是把我通向成功的道路展示了出来。希望以后跟我遇到同样问题的人,不要踩那么多坑,直接一步就成功!

这篇关于fastadmin 配置微信支付,实现微信公众号里面调起微信支付的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/429483

相关文章

Redis Cluster模式配置

《RedisCluster模式配置》:本文主要介绍RedisCluster模式配置,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录分片 一、分片的本质与核心价值二、分片实现方案对比 ‌三、分片算法详解1. ‌范围分片(顺序分片)‌2. ‌哈希分片3. ‌虚

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

Python实现精准提取 PDF中的文本,表格与图片

《Python实现精准提取PDF中的文本,表格与图片》在实际的系统开发中,处理PDF文件不仅限于读取整页文本,还有提取文档中的表格数据,图片或特定区域的内容,下面我们来看看如何使用Python实... 目录安装 python 库提取 PDF 文本内容:获取整页文本与指定区域内容获取页面上的所有文本内容获取

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程

《SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程》LiteFlow是一款专注于逻辑驱动流程编排的轻量级框架,它以组件化方式快速构建和执行业务流程,有效解耦复杂业务逻辑,下面给大... 目录一、基础概念1.1 组件(Component)1.2 规则(Rule)1.3 上下文(Conte

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri