成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

快應(yīng)用微信H5支付

ysl_unh / 3269人閱讀

摘要:快應(yīng)用微信支付首先是服務(wù)端完成支付服務(wù)端的接入,接入完成以后,服務(wù)器要完成的工作是接收來(lái)自客戶端的支付請(qǐng)求,然后生成一個(gè)訂單,之后把訂單傳給微信的服務(wù)器,微信會(huì)返回一個(gè),服務(wù)器需要把這個(gè)返回給客戶端完成一個(gè)中間跳轉(zhuǎn)頁(yè)面,中間頁(yè)需要在加載

快應(yīng)用微信H5支付

1.首先是服務(wù)端完成支付服務(wù)端的接入,接入完成以后,服務(wù)器要完成的工作是接收來(lái)自客戶端的支付請(qǐng)求,然后生成一個(gè)訂單,之后把訂單傳給微信的服務(wù)器,微信會(huì)返回一個(gè)mweb_url,服務(wù)器需要把這個(gè)mweb_url返回給客戶端;

data:{
    orderId :56955,
    url:"https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx13101012415473b5899768303880086259&package=1999421602"
}

2.完成一個(gè)中間跳轉(zhuǎn)頁(yè)面,中間頁(yè)需要在加載完成的時(shí)候從頁(yè)面的get參數(shù)中解析出 mweb_url , 然后自動(dòng)向這個(gè)url跳轉(zhuǎn);生成一個(gè)https://my.demain.com/html/bo... H5鏈接

//中間頁(yè)面H5的邏輯
  var payUrl = decodeURIComponent(getQueryString("mweb_url"))
  if (payUrl !== "null") {
    window.location.replace(payUrl)
  }

  function getQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var l = decodeURI(window.location.search);
    var r = l.substr(1).match(reg);
    if (r != null) return unescape(r[2]);
    return null;
  }

3.關(guān)于這個(gè)中間頁(yè):

為什么需要這個(gè)中間頁(yè)?

因?yàn)槲⑿舎5支付拉起支付界面的方式就是向mweb_url跳轉(zhuǎn),不過(guò)因?yàn)槲⑿艜?huì)通過(guò)ref做防盜鏈檢查,因?yàn)樘D(zhuǎn)動(dòng)作需要在開(kāi)發(fā)者的頁(yè)面中完成

這個(gè)中間頁(yè)什么時(shí)候會(huì)被加載運(yùn)行?調(diào)用微信支付的pay接口之后,平臺(tái)會(huì)自動(dòng)加載運(yùn)行這個(gè)頁(yè)面

加載運(yùn)行這個(gè)中間頁(yè)的時(shí)候,會(huì)拿到哪些參數(shù)?調(diào)用微信支付的pay接口時(shí)傳入的參數(shù),會(huì)全部作為get參數(shù)傳給這個(gè)頁(yè)面

4.在快應(yīng)用中進(jìn)行配置中間頁(yè)地址,manifest.json中聲明wxpay這個(gè)feature時(shí)填上

 {
     "name": "service.wxpay",
     "params": {
     "package": "you.package.name",
     "sign": "abcdefg",
     "url": "https://my.demain.com/html/bookSoter/index.html"
  }
}

5.調(diào)用官方文檔提供的wxpay.getType()方法

wechatPayHandle(){
    var payType = wxpay.getType();
    if (payType === "MWEB") {
    wxpay.pay({
      //微信網(wǎng)頁(yè)支付的prepayId
      prepayid: "wx13101012415473b5899768303880086259",
      extra: {
        //傳遞給支付頁(yè)面的自定義參數(shù), 根據(jù)需要進(jìn)行設(shè)置, 會(huì)被urlEncode之后拼接在配置的url尾部
        mweb_url: "https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx13101012415473b5899768303880086259&package=1999421602"
      },
      fail: function (data, code) {
        console.log(`WX H5 PAY handling fail, code = ${code}`)
      },
      cancel: function () {
        console.log("WX H5 PAY handling cancel")
      },
      success: function (data) {
        //H5方式下,支付成功的回調(diào)僅僅只是指將訂單遞交給微信,并不意味著支付已經(jīng)成功完成
        console.log(data)
      }
    })
  }
}

6.如果pay()方法走成功以后會(huì)返回一個(gè)data,不需要做任何操作和跳轉(zhuǎn),就可以喚起微信支付,返回的格式如下:

{
finl_url:"https://my.demain.com/html/bookSoter/index.html?repayid=wx13101012415473b5899768303880086259&trade_type=MWEB&mweb_url=https%3A%2F%2Fwx.tenpay.com%2Fcgi-bin%2Fmmpayweb-bin%2Fcheckmweb%3Fprepay_id%3Dwx13101012415473b5899768303880086259%26package%1999421602"
    }

7.如果走了success回調(diào)函數(shù)以后,微信喚起不成功存在可能有

生成的H5中間頁(yè)面的域名沒(méi)有在微信開(kāi)發(fā)平臺(tái)上面配置白名單;

服務(wù)端代碼發(fā)布環(huán)境和你測(cè)試環(huán)境在同一個(gè)局域網(wǎng)里面

8.如果走了fail回調(diào)函數(shù),看返回的code值

900 在manifest.json中配置的應(yīng)用簽名有誤,無(wú)法解析

901 在manifest.json中配置的應(yīng)用包名有誤

1000 微信未安裝

1001 用于微信網(wǎng)頁(yè)支付的url配置找不到

2001 訂單已經(jīng)提交給微信,但是微信返回錯(cuò)誤, 可能的原因:簽名錯(cuò)誤、未注冊(cè)APPID、項(xiàng)目設(shè)置APPID不正確、注冊(cè)的APPID與設(shè)置的不匹配、其他異常等。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/97730.html

相關(guān)文章

  • 開(kāi)源中國(guó)專訪:Chameleon原理首發(fā),其它跨多端統(tǒng)一框架都是假的?

    摘要:中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心發(fā)布的中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告顯示,截至年月,我國(guó)網(wǎng)民規(guī)模達(dá)億人,微信月活億支付寶月活億百度月活億另一方面,中國(guó)手機(jī)占智能手機(jī)整體的比例超過(guò),月活約億。在年末正式發(fā)布了面向未來(lái)的跨端的。 開(kāi)源中國(guó)專訪:Chameleon原理首發(fā),其它跨多端統(tǒng)一框架都是假的? 原創(chuàng): 嘉賓-張楠 開(kāi)源中國(guó) 以往我們說(shuō)某一功能跨多端,往往是指在諸如 PC、移動(dòng)等不同類型的設(shè)備之...

    GraphQuery 評(píng)論0 收藏0
  • beecloud對(duì)接——微信支付

    摘要:微信支付方式付款碼支付適用于線下場(chǎng)所支付支付是指商戶通過(guò)調(diào)用微信支付提供的接口,在支付場(chǎng)景中調(diào)起微信支付模塊完成收款。主要用于觸屏版的手機(jī)瀏覽器請(qǐng)求微信支付的場(chǎng)景??梢苑奖愕膹耐獠繛g覽器喚起微信支付。 微信支付方式(https://pay.weixin.qq.com/sta...): 1、付款碼支付————————適用于線下場(chǎng)所 2、JSAPI支付————————JSAPI支付是指商戶...

    FingerLiu 評(píng)論0 收藏0
  • 應(yīng)用開(kāi)發(fā)速上手及簡(jiǎn)明教程

    摘要:注冊(cè)賬號(hào)首先你需要一個(gè)手機(jī)廠商對(duì)應(yīng)開(kāi)發(fā)者賬號(hào)和快應(yīng)用賬號(hào)由于博主的手機(jī)是華為,就在華為官網(wǎng)注冊(cè)一個(gè)個(gè)人開(kāi)發(fā)者賬號(hào)就好啦,這個(gè)部分就不具體展開(kāi)了。 博主的開(kāi)發(fā)及調(diào)試環(huán)境是 macOS 10.13.4 + Chrome/65.0.3325.181 + honorV9 EMUI8.0.0(Android8.0.0)本文適合有一定前端開(kāi)發(fā)經(jīng)驗(yàn)的小伙伴(有一定經(jīng)驗(yàn)看原文檔太累贅了,而且環(huán)境配置部...

    sean 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

ysl_unh

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<