最近在做一个微信公众号,其中用到了微信支付。之前一直按照V2的版本在研究,等申请通过之后才发现只能使用V3了。
目前网上V3版本的资料很少,所以写此博文以供参考。
言归正传,初步看了官方提供的技术文档,在我看来v3版本相对于v2版本最大的区别就是V3在发起支付请求前需要先调用统一支付接口 (https://api.mch.weixin.qq.com/pay/unifiedorder)获取预支付id(prepay_id)
首先调用下面的方法,结果会以xml的形式返回,当返回的return_code 和 result_code 都为 SUCCESS 时,才认为调用成功,此时可获取prepay_id。获取到prepay_id之后便可通过JSAPI发起微信支付请求
注:v2版本signType是sha1,而v3是MD5
一切所需准备完毕之后在页面中执行下方js即可: