码迷,mamicode.com
首页 > 微信 > 详细

H5调起微信支付功能

时间:2017-05-15 19:40:51      阅读:581      评论:0      收藏:0      [点我收藏+]

标签:ice   log   html   false   判断   str   参数   工作   ack   

第一步:需要后端返回需要的以下参数:

该操作是你提交完订单信息后在接口所返回的json,

其次将其存储起来,我用的localStorage

var payParams = {
"appId":$wxData.appId,
"timeStamp":$wxData.timeStamp, //时间戳,自1970年以来的秒数
"nonceStr":$wxData.nonceStr, //随机串
"package": $wxData.package,
"signType":$wxData.signType, //微信签名方式:
"paySign":$wxData.paySign //微信签名
};

第二步:新建空白页面(订单支付按钮跳转后的页面)

 

function onBridgeReady() {
var req = localStorage.getItem("payParams");
if (!req) return;
else req = JSON.parse(req);
WeixinJSBridge.invoke(
‘getBrandWCPayRequest‘, req,
function(res) {
if (res.err_msg == "get_brand_wcpay_request:ok") {
// alert("支付成功");
} // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回 ok,但并不保证它绝对可靠。
else {
console.log(res.err_msg);

//支付失败后的操作
window.location.href = "pay.html?ticketPrice="+$tickprice+"&actid="+$actid+"&ticketId="+$ticketId+"&sellerid="+$sellerid;
}
}
);
}
if (typeof WeixinJSBridge == "undefined") {
if (document.addEventListener) {
document.addEventListener(‘WeixinJSBridgeReady‘, onBridgeReady, false);
} else if (document.attachEvent) {
document.attachEvent(‘WeixinJSBridgeReady‘, onBridgeReady);
document.attachEvent(‘onWeixinJSBridgeReady‘, onBridgeReady);
}
} else {
onBridgeReady();
}

 

完事了 前端工作 ,但是就是跟后台配合获取微信名称,openid 等等 可能比较耗费时间

 

H5调起微信支付功能

标签:ice   log   html   false   判断   str   参数   工作   ack   

原文地址:http://www.cnblogs.com/S-pcholder/p/6857567.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!