Maison  >  Article  >  interface Web  >  Comment envoyer des enveloppes rouges à l'aide du mini-programme WeChat

Comment envoyer des enveloppes rouges à l'aide du mini-programme WeChat

yulia
yuliaoriginal
2018-09-10 15:11:026418parcourir

La version actuelle du mini programme ne prend pas en charge la fonction d'envoi d'enveloppes rouges. Les développeurs sourient en surface, mais dans leur cœur ils sont insatisfaits ! Ici, nous proposons une solution qui a été mise en pratique.

L'analyse détaillée comprend les étapes suivantes

1 La première est l'entrée pour recevoir des enveloppes rouges dans le mini programme
2. Passez à la vue Web et attachez le jeton du mini-programme actuel à la vue Web pour vérification. Le src de la vue Web pointe vers une page openid pour un compte de service avec des capacités de paiement. Sur la base du jeton ci-joint, il est jugé si l'utilisateur peut recevoir le. enveloppe rouge. À l'heure actuelle, l'utilisateur dispose de deux openids. L'un est l'openid relatif au mini-programme et l'autre est l'openid relatif au compte de service utilisé pour envoyer les enveloppes rouges, comme indiqué dans le pseudo-code ci-dessous
.

// 伪代码
    weixinApi.angerPay.sendRedPacket({
      total_num: 1,
      mch_billno: '1000000',
      send_name: '测试标题',
      re_openid: 'xaxadsadas', // 获取到的openid
      total_amount: 100,
      wishing: '恭喜发财,大吉大利',
      act_name: '扫码领红包',
      remark: '备注信息',
      client_ip: '127.0.0.1',
      scene_id: 'PRODUCT_2'
      }, (err, result) => {
      console.log(err, result)
  });

3. Renvoyez le résultat

Notes

1 Le src de la vue Web sautée doit être ajouté au domaine métier du mini programme. nom
2. Le lien doit être le protocole https

Dans le futur L'interface

ouvrira prochainement une interface d'envoi de paquets rouges, qui est wx.sendBizRedPacket, exemples d'utilisation.

   wx.sendBizRedPacket({
      timeStamp: e.timeStamp,
      nonceStr: e.nonceStr,
      package: e.package,
      signType: e.signType,
      paySign: e.paySign,
      success: function (res) {
        console.log('红包success')
        let url = config.HTTP_Prize_URL + '/v1/sign_tmp/sendSuccess.do';
        let data = {
          minipid: that.data.minipid,
          date: that.data.date
        }
        console.log('红包成功以后接口请求参数数据:' + JSON.stringify(data))
        util.request(url, 'post', data, '正在加载数据', function (res) {
          console.log('红包成功以后接口返回结果:' + JSON.stringify(res.data))
        })
        wx.reLaunch({
          url: '../my_prize/my_prize_2?reward=' + res.data.body.reward,
        })
      },
      fail: function (res) {
        console.log('红包fail')
      },
      complete: function (res) {
        console.log('红包complete')
        // wx.showModal({
        //   title: '红包complete',
        //   content: '红包complete',
        // })
      }
    })

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn