抖音使用 tt.pay 接通微信支付,前端


   簡單記錄調用微信 H5 支付,前端思路

  tt.request({
    url:'后台服務器',   // 目標服務器url
    method: 'POST', // POST 請求
    header: {
    "content-type": "application/x-www-form-urlencoded"
    },
    data: {
      money: 1,     // 支付所需要的錢 
      app_name: '抖音',  // 需要跳轉的 app 名稱 
      package_name: 'com.tencent.tmgp.sgame',   // 包名(不是很理解包名是什么意思)
      session_3rd: '',    //   每個用戶唯一  openid    
      type: 'Android'   // 手機型號 IOS 不支持 虛擬支付。
    },
    success ( r )  {
    tt.pay({
    orderInfo: r.data.data,   //  訂單所需要的值,后端調用微信下單接口返回的值。
    _debug: 1,        // 僅限調試用,上線前去掉該參數。_debug=1 時,微信支付期間可以看到中間報錯信息,方便調試
    service: 1,     
  /*固定值:1 (拉起小程序收銀台)開發者如果不希望使用頭條小程序收銀台,service 設置為 3/4 時,可以直接拉起微信/支付寶進行支付:service=3: 微信 API 支付,不拉起小程序收銀台;service=4: 支付寶 API 支付,不拉起小程序收銀台 */
    getOrderStatus(res) {
      let { out_order_no } = res;   // 訂單號
      return new Promise(function (resolve, reject) {
      // 商戶前端根據 out_order_no 請求商戶后端查詢微信支付訂單狀態
      tt.request({
        url: "后端通過查詢微信訂單返回的接口",
        method: 'POST',
        header: {
          "content-type": "application/x-www-form-urlencoded"
        },
        data: {
          out_order_no: out_order_no   // 必傳參數 訂單號
        },
        success(res) {
        // 商戶后端查詢的微信支付狀態,通知收銀台支付結果
          if (res.data.trade_state == "SUCCESS") {
          // 查詢微信訂單返回一個 trade_state 的屬性值 當它返回為 SUCCESS 時,就為成功,Promise 中 resolve中返回 code:0 方便下面拿到。
            resolve({ code: 0 })
          } 
        },
        fail(err) {
          reject(err);
        }
      });
    });
   },
  // 成功吊起支付頁面
  success(res) {
    if (res.code == 0) {
     // 從微信查詢訂單中拿到 code == 0  字節跳動會判斷支付成功,會改變收銀台狀態為完成。邏輯可以再這里處理。
    }
  },
  // 調起收銀台失敗處理邏輯
  fail(res) {
  // 調起收銀台失敗處理邏輯
  }
 });
 }
});
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM