• 微信支付(微信公众号支付) [记录]


    后台 
      先获取code code有效5min
         public string GetCodeUrl(string Appid, string redirect_uri)
           {
             return string.Format("https://open.weixin.qq.com/connect/oauth2/authorize?appid={0}&redirect_uri={1}&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect", Appid, redirect_uri);
           }
          url  接口(接收code方法地址***/a/b)

      通过code获取token
          access_token
          公众号调用各接口时都需使用access_token

      通过token 生成 预支付订单
    文档代码:
    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(); }



    项目: 统一下单 - 返回参数 - 下单调起支付

    wxPay: function (obj) {
    if (typeof WeixinJSBridge == "undefined") {
    g.alert('该浏览器不支持微信支付哟!')
    if (document.addEventListener) {
    document.addEventListener('WeixinJSBridgeReady', g.inPay, false);
    } else if (document.attachEvent) {
    document.attachEvent('WeixinJSBridgeReady', g.inPay);
    document.attachEvent('onWeixinJSBridgeReady', g.inPay);
    }
    } else {
    g.inPay(obj);
    }
    },


    inPay: function (obj) {
    var json;
    $.ajaxSettings.async = false;
    var postUrl;
    switch (obj.mark){
    case 'course':postUrl='/Api/course/submitOrder';
    break;
    case 'member':postUrl='/Api/member/buyMember';
    break;
    default:break;
    }
    $.post(postUrl, {id:obj.id}, function (res) {
    if (res.httpCode == 200) {
    var dt = res.data;
    json = {
    appId: dt.appId
    , timeStamp: dt.timeStamp
    , nonceStr: dt.nonceStr
    , package: dt.package
    , signType: dt.signType
    , paySign: dt.paySign
    }
    WeixinJSBridge.invoke(
    'getBrandWCPayRequest', {
    "appId": json.appId
    , "timeStamp": json.timeStamp
    , "nonceStr": json.nonceStr
    , "package": json.package
    , "signType": json.signType
    , "paySign": json.paySign
    },
    function (res) {
    if (res.err_msg == "get_brand_wcpay_request:ok") {
    g.alert("恭喜你支付成功!");
    g.open(localStorage.getItem('url'));
    } else {
    g.alert("支付失败!");
    }

    }
    );
    } else {
    g.alert('获取订单失败!')
    }
    });
    }
     

    微信官方文档 :https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6

    文档参考 : https://www.zhihu.com/question/63196360

  • 相关阅读:
    遗传算法中适值函数的标定与大变异算法
    遗传算法中几种不同选择算子及Python实现
    BZOJ_4025_二分图_线段树按时间分治+并查集
    BZOJ_1818_[Cqoi2010]内部白点 _扫描线+树状数组
    BZOJ_3165_[Heoi2013]Segment_线段树
    UOJ_21_【UR #1】缩进优化_数学
    UOJ_14_【UER #1】DZY Loves Graph_并查集
    BZOJ_5359_[Lydsy1805月赛]寻宝游戏_DP
    BZOJ_2813_奇妙的Fibonacci_线性筛
    51nod_1236_序列求和 V3 _组合数学
  • 原文地址:https://www.cnblogs.com/caiCheryl/p/8432526.html
Copyright © 2020-2023  润新知