前端 ——微信调起H5微信支付
2019-01-11 本文已影响12人
拾钱运
首先阅读 微信 js sdk https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115
第一步绑定域名
第二步引入jssdk
第三步就是配置
里面的参数除了jsapilist 之外都需要后台提供给你,成功之后就是
wx.config({
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: '', // 必填,公众号的唯一标识
timestamp: , // 必填,生成签名的时间戳
nonceStr: '', // 必填,生成签名的随机串
signature: '',// 必填,签名
jsApiList: [] // 必填,需要使用的JS接口列表
});
还有一种 JSAPI 支付的调起 参数后台都会提供
function onBridgeReady(){
WeixinJSBridge.invoke(
'getBrandWCPayRequest', {
"appId":"wx2421b1c4370ec43b", //公众号名称,由商户传入 "timeStamp":"1395712654", //时间戳,自1970年以来的秒数 "nonceStr":"e61463f8efa94090b1f366cccfbbb444", //随机串 "package":"prepay_id=u802345jgfjsdfgsdg888",
"signType":"MD5", //微信签名方式: "paySign":"70EA570631E4BB79628FBCA90534C63FF7FADD89" //微信签名 },
function(res){
if(res.err_msg == "get_brand_wcpay_request:ok" ){
// 使用以上方式判断前端返回,微信团队郑重提示: //res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。 }
});
}
onBridgeReady()
这样就可以了。看着很简单坑的地方在不能浏览器调试,微信开发者工具不能调试微信支付,只能手机微信内置浏览器中调试。参数的每个单词要认真填写,由于我的不认真,后台找半天错误,也没说我,真是很对不住后台。需要注意的是时间戳要是10位
还有就是配置域名那里,报错chooseWXPay:fail 出错 查半天说是配置域名不对,要配置到最底层的那个域名地址(后台最明白)链接:https://www.cnblogs.com/achengmu/p/7018034.html
未完结,现在oppid 商品价格写死了 后续会更新