h5支付java_对接微信H5支付(Java)

微信H5支付是让用户在非微信浏览器中使用的一种支付方式;

项目中对接微信支付是   微信公众号关联商户号的账号;

先上微信支付对接文档 微信支付文档地址,有需要的童鞋可以先自行了解一下;

从微信公众号后台获取基本数据,哪里获取自行登录微信公众号登录;

1.appid :公众号ID

2.mchid:商户号

3.key:商户号密钥

微信支付下单接口是统一的地址:https://api.mch.weixin.qq.com/pay/unifiedorder

微信加密规则自行了解微信加密规则

添加一个微信的工具类方便操作,maven地址

com.github.wxpay

wxpay-sdk

0.0.3

后端对接微信就一步操作,调用微信统一下单接口获取支付链接返回给前端就好了 微信H5下单文档

b72013c92125

具体代码如下图,图中xml转实体,map转xml,以及加密参数 ,可引用上方maven中, WXPayUtil 中有对应方法

b72013c92125

b72013c92125

b72013c92125

前端跳转链接唤醒微信,当用户支付成功后微信会通过第一步中 notify_url(异步通知地址)回调到服务器,通知该订单支付状态

回调自己处理对应业务逻辑后需要返回给微信一个处理成功的通知,否则微信回在一段时间不间断通知你的服务器,以下就是返回内容,直接response.write(resXml ) 就可以了;String resXml = "" +

""

+ ""

+ " ";

//获取request中的回调参数 并转成map

InputStream inStream = request.getInputStream();

ByteArrayOutputStream outSteam = new ByteArrayOutputStream();

byte[] buffer = new byte[1024];

int len = 0;

while ((len = inStream.read(buffer)) != -1) {

outSteam.write(buffer, 0, len);

}

String resultxml = new String(outSteam.toByteArray(), "utf-8");

outSteam.close();

inStream.close();

Map paramMap = WXPayUtil.xmlToMap(resultxml);

b72013c92125

至此整个支付流程已经对接完毕

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值