微信扫码支付教程(服务商版)
这是我的第一篇博客希望对大家有用,废话不多说直接步入正题!
我的专业是JavaWeb开发第一次接触微信支付的时候真是头疼,官方写的文档看的也费尽总是出问题所以今天我给大家出一个微信扫码支付(Native)服务商版教程 服务商版—服务商版—服务商版 重要的事情说三遍和商户版是有些不一样的,后续给大家补充商户版
1.先查看官方文档
1.1百度微信支付打开官方文档选择“服务商版”
1.2 我们选择Native支付 - 查看文档 - 选择左侧导航“API列表”
1.3 API列表中【统一下单】就是我们扫码支付最重要的东西了,我们需要对应着里面的参数来编写支付功能
我们只需要在意参数为必填的即可其他参数看自己的情况
注意:1.首先确保服务商和子商户开通了扫码支付的权限不然的话是不可以使用的!
下面直接贴出我的代码
代码注意事项
1.【服务商APPID】就是微信公众号的APPD 这是必备的一个东西,【商户号】就是服务商的商户号,【子商户号】你必须确保这个子商户-服务商-微信公众号 他们是绑定关系 不然会造成跨主体关系下单失败。
2.随机字符串 使用到了微信支付官方DEMO的工具类 各位小伙伴自行下载即可
3.说说我遇到的几个大坑:所有的参数需要按照字典排序存放 不然会造成错误!所以我使用了TreeMap会自动进行排序 所需参数名建议大家从官方文档中复制就好不然也可能会造成下单失败
4.另外代码中用到的KEY是服务商的KEY千万不要写成子商户的KEY,下单成功之后会返回二维码的连接和其他的一些数据 将这些数据加以包装返回给前端即可
签名 方法记得看官方文档说明 这个很重要 不然随时签名失败。