网站对接微信支付需要什么(Springboot对接微信支付全过程)

首页教程更新时间:2023-06-11 09:30:49

大家好,我是xp,又是一阵摸鱼记,坚持真的太难了。

网站对接微信支付需要什么,Springboot对接微信支付全过程(1)

不多bb,开始。

前段时间,对接了支付宝支付、微信支付,发现还是支付宝支付方便,没遇到一点困难,直接ok。而微信支付,哎,真的是一坑 一坑。

微信支付:载体 商户平台

首先说明一下,对接这种支付,建议:要么找现成的demo,开箱即用,要么是找官方的SDK包。

网站对接微信支付需要什么,Springboot对接微信支付全过程(2)

我这里介绍的是使用官方的SDK包,并且是v3版本(注意微信支付,有v2和v3两种版本)。

因为我用的语言是Java,所以看的是wechatpay-apache-httpclient。

这里是github地址:https://github.com/wechatpay-apiv3/wechatpay-apache-httpclient

接下来主要介绍几个参数:

这2个参数就是载体,比如你是小程序需要微信支付,或者APP,或者网站应用,首先需要这个载体。

举个例子:

小程序:

网站对接微信支付需要什么,Springboot对接微信支付全过程(3)

小程序的话,就去微信公众平台的小程序里面去找。

其他的就去服务号啊之类的里面去找。

注意,要在商户平台里面绑定

网站对接微信支付需要什么,Springboot对接微信支付全过程(4)

网站对接微信支付需要什么,Springboot对接微信支付全过程(5)

在商户平台里面查找

网站对接微信支付需要什么,Springboot对接微信支付全过程(6)

可以在商户平台的API安全按照官网文档配置,然后下载,解压下来是这样:

网站对接微信支付需要什么,Springboot对接微信支付全过程(7)

merchantSerialNumber可以在商户平台里面查看,也可以通过上面的文件获取。

通过下面的代码加载apiclient_cert.pem,会看到证书序列号。

网站对接微信支付需要什么,Springboot对接微信支付全过程(8)

通过下面的代码加载apiclient_cert.pem,会得到私钥。

网站对接微信支付需要什么,Springboot对接微信支付全过程(9)

这个要先下载微信的证书:

网站对接微信支付需要什么,Springboot对接微信支付全过程(10)

图中圈出来的3个参数都已经得到,wechatPayCertificates可以使用这个httpClient去调用获取平台证书接口得到。

完整代码:

public CloseablehttpClient getWxHttpClient() throws IOException { //商户号 String merchantId = wxPay.getMchId(); //证书序列号 String merchantSerialNumber = wxPay.getMerchantSerialNumber(); String apiFileName = wxPay.getApiFileName(); //私钥 PrivateKey merchantPrivateKey = getPrivateKey(apiFileName); List<X509Certificate> certificates1 = new ArrayList<>(); //下载的微信支付平台证书列表,我是提取下载好的。 String wxFileName = wxPay.getWxFileName(); X509Certificate certificate = getCertificate(wxFileName); certificates1.add(certificate); WechatPayHttpClientBuilder builder = WechatPayHttpClientBuilder.create() .withMerchant(merchantId, merchantSerialNumber, merchantPrivateKey) .withWechatPay(certificates1); CloseableHttpClient httpClient = builder.build(); return httpClient; }

有了这个httpClient,接下来只需要参考文档,就可以一一传参了。

再额外说一下,例如小程序下单,是先预下单,然后页面调用唤起微信的功能,这时候需要加签这个步骤,也是坑了我好久的。

网站对接微信支付需要什么,Springboot对接微信支付全过程(11)

主要看这里的示例,拼接的时候加一个/n换行符就行了

网站对接微信支付需要什么,Springboot对接微信支付全过程(12)

但是如果你使用微信的验签工具,则不仅需要加一个/n换行符,还需要加一个/n字符串,切记。

网站对接微信支付需要什么,Springboot对接微信支付全过程(13)

其他的也没什么好说的了,就是一些授权目录啥的,要去 微信配置,按照返回的错误改吧。

这里夸奖一下支付宝,多好,没有什么预下单,也没有什么授权目录,直接一步到位。

,
图文教程
相关文章
热门专题
推荐软件
奇热小说
奇热小说
下载
QQ2019手机版
QQ2019手机版
下载
王者荣耀
王者荣耀
下载
百度浏览器迷你版
百度浏览器迷你版
下载
2345浏览器手机版
2345浏览器手机版
下载
网易邮箱
网易邮箱
下载
爱奇艺
爱奇艺
下载
网易云音乐
网易云音乐
下载
WPSOffice
WPSOffice
下载
优酷
优酷
下载
谷歌浏览器(Chrome)
谷歌浏览器(Chrome)
下载
迅雷看看播放器
迅雷看看播放器
下载
UC浏览器
UC浏览器
下载
QQ音乐
QQ音乐
下载
阿里旺旺买家版v9.12.10C官方版
阿里旺旺买家版v9.12.10C官方版
下载
360安全卫士v12.1官方版
360安全卫士v12.1官方版
下载
猜你喜欢
炫勇139邮箱抽取全国移动流量v1.0绿色版
炫勇139邮箱抽取全国移动流量v1.0绿色版
下载
东汉书院Mac版V1.0
东汉书院Mac版V1.0
下载
IdleArks
IdleArks
下载
球球大作战测试服
球球大作战测试服
下载
小猪的时间管理
小猪的时间管理
下载
微信好友精灵
微信好友精灵
下载
吉林警视通
吉林警视通
下载
三国我为王
三国我为王
下载
猫猫学园
猫猫学园
下载
临沂市教育收费管理系统v1.0.7官方版
临沂市教育收费管理系统v1.0.7官方版
下载
驰龙物流
驰龙物流
下载
蟋蟀明星史诗联盟
蟋蟀明星史诗联盟
下载
撞击俱乐部
撞击俱乐部
下载
优托邦商户版
优托邦商户版
下载
最全钢琴谱app
最全钢琴谱app
下载
九界轮回诀
九界轮回诀
下载