抖音使用 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