具体步骤:
首先通过微信支付的api 获得支付用的prepay_id,这里需要用到上面提到的“AppID(应用ID)”,“AppSecret(应用密钥)”,“微信支付分配的商户号”,“商户支付密钥”以及其他的一些参数(具体参照微信开发文档)用MD5加密成签名(第一次签名)获得prepay_id后,用prepay_id和一些其他参数(具体参照微信开发文档)用MD5加密成签名(第二次签名)然后在前端通过微信内置浏览器提供的js API,WeixinJSBridge.invoke来调用微信支付的弹出页面,这里需要用到上面的第二次的签名
注:支付链接和在开发平台配置的链接不匹配,总共需要2次签名,并且所需的参数是不同的,在JS中用到的签名是第二次签名,不要混淆参数传递的不能有错。
1、含义不同。
微信h5支付:是集成在微信客户端的支付功能,用户可以通过手机完成快速的支付流程。
jsapi支付:以绑定银行卡的快捷支付为基础的支付。
2、支付方式不同。
微信h5支付:h5支付是用在公众号内。
jsapi支付:jsapi支付是网页发起的微信支付请求。
3、功能不同。
微信h5支付:可以在手机网站内直接支付,为移动支付方式,简单快捷。
jsapi支付:仅可以在微信浏览器内发起支付,比如公众号内的网页和微信小程序,略微麻烦。
参考资料来源:微信支付-普通商户接入