问题描述:已经设置了jsapi支付授权目录,微信jsapi支付失败 当前页面的URL未注册,增加 history.pushState(null,null,"/weixin/"); 解决问题
如图:借的图,实际设置的是 http://www.xxxx.com/weixin/
支付提示:
未改之前:
<script src='<?=SITE_URL?>/js/jquery.min.js'></script>
<script type="text/javascript">
//调用微信JS api 支付
function jsApiCall() {
WeixinJSBridge.invoke(
'getBrandWCPayRequest',
<?=$jsApiParameters; ?>,
function (res) {
WeixinJSBridge.log(res.err_msg);
//alert(res.err_code + res.err_desc + res.err_msg);
}
);
}
function callpay() {
if (typeof WeixinJSBridge == "undefined") {
if (document.addEventListener) {
document.addEventListener('WeixinJSBridgeReady', jsApiCall, false);
} else if (document.attachEvent) {
document.attachEvent('WeixinJSBridgeReady', jsApiCall);
document.attachEvent('onWeixinJSBridgeReady', jsApiCall);
}
} else {
jsApiCall();
}
}
</script>
修改之后:
<title>微信获取</title>
<script src='<?=SITE_URL?>/js/jquery.min.js'></script>
<script type="text/javascript">
history.pushState(null,null,"/weixin/");//解决设置了支付目录还提示url未注册
//调用微信JS api 支付
function jsApiCall() {
WeixinJSBridge.invoke(
'getBrandWCPayRequest',
<?=$jsApiParameters; ?>,
function (res) {
WeixinJSBridge.log(res.err_msg);
//alert(res.err_code + res.err_desc + res.err_msg);
}
);
}
function callpay() {
if (typeof WeixinJSBridge == "undefined") {
if (document.addEventListener) {
document.addEventListener('WeixinJSBridgeReady', jsApiCall, false);
} else if (document.attachEvent) {
document.attachEvent('WeixinJSBridgeReady', jsApiCall);
document.attachEvent('onWeixinJSBridgeReady', jsApiCall);
}
} else {
jsApiCall();
}
}
</script>