完整的微信小程序支付开发记录(亲测)

这次呢是开发小程序的支付功能。因为没有做过,特此记录,做一个小总结,以便以后使用以及给小伙伴们提供一个像我一样的小白一个参考,我也是一点一点摸索过来的,此文只针对开发支付流程而言以及出现的问题,其它则会略过,只讲解实际动手开发过程 ,
名词和实际开发API看 开发文档
而我用的是普通模式

在这里插入图片描述

前期准备

1.开通微信支付平台 成为普通商户,上传商户所需信息(这个不用我多说)
2.配置小程序,获取appId (小程序项目也和支付无关,只需小程序的appId ,其它不表)
3.小程序appId 关联绑定商户支付平台 ,如图:
在这里插入图片描述

4.微信支付平台(简称平台)设置密钥,(密钥就是签名时要用的 key) 如图:
在这里插入图片描述
然后进入正题,首先服务器后端项目需要加入依赖:

<!-- 微信支付API -->
	<dependency>
		<groupId>com.github.wxpay</groupId>
		<artifactId>wxpay-sdk</artifactId>
		<version>0.0.3</version>
	</dependency>

以上的依赖官方已经封装了支付的方法及工具,使用起来很是方便,完全不用从基础一步一步根据API 封装实现。省了我们不少麻烦和繁琐。

也可以从支付平台下载SDK和demo对比,查看具体的内容, 其内容和依赖是一样的。
如图:

在这里插入图片描述

现在开始看代码,虽然封装了一些方法,但是项目还是需要配置一下自己的东西,比如appid 、商户号以及key 的配置,

package com.xn.weixin.common;

import java.io.ByteArrayInputStream;
import java.io.InputStream;

import com.github.wxpay.sdk.WXPayConfig;

//  需要实现一下支付基本的配置,方便调用
	public class MyPayConfig implements WXPayConfig{

			private byte[] certData;

			public void MyConfig() throws Exception {
					//此处暂时用不到,这里是读取证书的地方
			}

		    public String getAppID() {
		        return "这里是你的appid";
		    }
		
		    public String getMchID() {
		    //申请普通商户时分配给你的商户号
		        return "这里是你的商户号";
		    }
		
		    public String getKey() {
		    //这里的key 就是你在支付平台设置的API密钥
		        return "这是就是你的Key了";
		    }
		
		    public InputStream getCertStream() {
		        ByteArrayInputStream certBis = new ByteArrayInputStream(this.certData);
		        return certBis;
		    }
		
		    public int getHttpConnectTimeoutMs() {
		        return 8000;
		    }
		
		    public int getHttpReadTimeoutMs() {
		        return 10000;
		    }
}

接下来下一步,我们看API 文档中有下面几点:

商户系统和微信支付系统主要交互:

1、小程序内调用登录接口,获取到用户的openid,api参见公共api【小程序登录API】

2、商户server调用支付统一下单,api参见公共api【统一下单API】

3、商户server调用再次签名,api参见公共api【再次签名】

4、商户server接收支付通知,api参见公共api【

servlet微信小程序支付是一种在Java Web应用程序中使用的支付服务,适用于微信小程序平台上进行交易支付的需求。在实现这种支付服务的过程中,需要使用servlet作为服务器端的容器,来处理客户端的请求,并在一定的规则和条件下,完成交易的支付流程。 具体来说,在使用servlet微信小程序支付服务的时候,首先需要在微信支付平台上注册商户账号,并生成对应的App ID和商户号。然后,使用Java的相关开发工具和微信支付提供的SDKs,编写代码实现支付功能。在代码中,需要提供将支付请求转发给微信支付服务器的处理逻辑,并获取支付结果返回给客户端的逻辑。同时,在支付过程中,需保证请求的安全性,防止支付信息被篡改或泄露。 当客户端发起支付请求时,首先向小程序后端发送请求,再由后端向微信支付平台发送请求,获取预支付信息,之后将预支付信息返回给前端。前端再通过微信支付接口进行支付支付成功后微信支付平台会通知小程序后端,最后后端返回支付结果给前端。整个支付交易流程完成后,需要对支付信息进行记录和存储,以备后续查询和统计。 总之,servlet微信小程序支付服务适用于需要在Java Web应用程序中实现微信小程序支付交易的场景,提供了方便快捷、安全可靠的支付接口服务,为商户提供了更加便捷的支付服务解决方案。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值