微信企业号开发:企业支付成功后关闭交易页面问题

官方的demo有不少小问题导致支付成功后,依然留在支付页面,而且很奇怪,getBrandWCPayRequest方法的回调根本就不进去。


一直以为是自己的问题,后来在发现是demo的问题。

找到了文档解决方法

文章列出来了一下几点

1 除了上面说到的引用以外
登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”   “res.wx.qq.com”
(这一项我没有测试是不是必须)

2(必须)JsApiPayPage.aspx页面JS错误写法
if (typeof WeixinJSBridge == "undefined") 改成
if (typeof('WeixinJSBridge') == "undefined")

3(必须)还是JsApiPayPage.aspx页面Button的OnClientClick事件
OnClientClick="callpay()"改成
OnClientClick="javascript:callpay();return false;"


但我发现第一点不需要,也就是不需要添加js文件jweixin-1.0.0.js

另外在支付成功后添加一下代码就可以关闭交易页面

    WeixinJSBridge.invoke('closeWindow', {}, function (res) {
                            });


 function (res)
                    {                   
                        if (res.err_msg =="get_brand_wcpay_request:ok")
                        {
                          //  alert("支付成功err_code=" + res.err_code + ",err_desc=" + res.err_desc + ",err_msg=" + res.err_msg);
                            WeixinJSBridge.invoke('closeWindow', {}, function (res) {
                            });
                        }
                        else if (res.err_msg == "get_brand_wcpay_request:cancel") {
                          //  alert("用户取消err_code=" + res.err_code + ",err_desc=" + res.err_desc + ",err_msg=" + res.err_msg);
                        }
                        else {
                            alert("	支付失败err_code=" + res.err_code + ",err_desc=" + res.err_desc + ",err_msg=" + res.err_msg);
                        }                     
                     }




你可能感兴趣的:(微信企业号开发,微信企业号开发)