ian唐 2017-02-10 11:11 采纳率: 50%
浏览 4541
已结题

微信支付返回get_brand_wcpay_request:fail

微信支付出了这样一个问题。
图片说明
图片说明
关于微信支付的paySign参数我这样处理正确吗?

1、已经确定了按签名算法计算的签名是正确的,用工具验证过了。
2、js sdk也已经成功加载,相应支付功能也获取到了。

  • 写回答

2条回答

  • baipiang 2017-02-15 13:37
    关注

    JS API的返回结果get_brand_wcpay_request:ok仅在用户成功完成支付时返回。由于前端交互复杂,get_brand_wcpay_request:cancel或者get_brand_wcpay_request:fail可以统一处理为用户遇到错误或者主动放弃,不必细化区分。
    示例代码如下:

    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,但并不保证它绝对可靠。
    }
    );
    }
    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();
    }

    评论

报告相同问题?

悬赏问题

  • ¥15 chaquopy python 安卓
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题