评论

分享扫码打开小程序操作实战

扫码打开小程序的实战操作方法分享

这是我们工作过程中的经验总结,现在分享给大家

说明:生成能打开小程序的二维码分为两种:1. 服务端调用接口生成;2. 前端生成二维码

一、服务端调用接口生成

  1. https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN
    适用于需要的码数量较少的业务场景
    生成小程序码,可接受 path 参数较长。 永久有效,可生成的码数量限制为 100,000
  2. https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=ACCESS_TOKEN
    适用于需要的码数量极多的业务场景。
    可接受页面参数较短,生成个数不受限。 永久有效,数量暂无限制
    调用分钟频率受限(5000次/分钟)
    ,如需大量小程序码,预生成
  3. https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=ACCESS_TOKEN
    适用于需要的码数量较少的业务场景。
    生成二维码,可接受 path 参数较长。 生成个数受限,可生成的码数量限制为 100,000
在小程序中接受参数方式:page onLoad函数中接受
Page({
  onLoad(query) {
    // 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene
    const scene = decodeURIComponent(query.scene)
  }
})

二、前端生成二维码

操作步骤:

1. 在小程序后台(mp.weixin.qq.com)配置链接

https://mp.weixin.qq.com/wxopen/devprofile?action=get_profile&token=1318106189&lang=zh_CN

2. 点击添加:

3. 添加完成后点击上线
4. 在JS中用第三方库将拼接好的URL(比如: https://xxxxx/homeindex?orderId=123)生成二维码
小程序获取二维码中携带的参数:

app.js的 onshow/onLoad函数中获取参数,options.query.q是生成二维码的完成URL,后截取URL获取相应参数

if (!!options.query && !!options.query.q) {
      let url = decodeURIComponent(options.query.q)
      if (url.indexOf('orderId') > -1) {
        let index = url.slice(url.indexOf('orderId'))
        if (index.indexOf('&') > -1) {
          let orderObj = index.slice(0, index.indexOf('&'))
          this.globalData.orderId = orderObj.split('=')[1]
        } else {
          this.globalData.orderId = index.split('=')[1]
        }
      }
}
最后一次编辑于  08-16  
点赞 2
收藏
评论