小程序入口传参:关于带参数的小程序扫码进入的方法

Posted by Kosmos on June 6, 2018

##1.使用场景

1.医院场景:比如每个医生一个id,通过带参数二维码,扫码二维码就直接进入小程序医生页面
2.餐厅场景:比如每个菜一个二维码,通过扫码这个菜的二维码,进入小程序后,可以直接点这道菜,而不是要找菜铺。
3.电商场景:扫码二维码带参数,进入小程序直接购买,比如通过公众号,通过带参数二维码,用户长按识别,直接进入服装的购买页面,提高购买转换。

2.二维码生成

通过后台接口可以获取小程序任意页面的二维码,扫描该二维码可以直接进入小程序对应的页面。 小程序官方提供了3个二维码生成接口。可生成2种类型的二维码。
微信公众号支持带参二维码的批量生成,但是小程序目前不可以,如果数量巨大,比如需要10万个带不同参数的二维码,那官方提供的二维码的生成方式就不实用了(可以自己尝试写一个脚本挂在那里循环生成233)

######2.1.类型一 特点:

接口A(菊花形二维码)、接口C(普通方形二维码):适用于需要的码数量较少的业务场景:

  • 0.可接受path参数较长
  • 1.通过该接口生成的小程序码,永久有效
  • 2.生成数量受限制( 目前接口A、B总数量限制是10万个),扫码访问次数没有限制
  • 3.用户扫码后,直接进入指定页面

接口A的参数: 参数|类型|默认值|说明 —|—|—|— path|String|-|不能为空,最大长度 128 字节 width|Int|430|二维码的宽度 auto_color|Bool|false|自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调 line_color|Object|{“r”:”0”,”g”:”0”,”b”:”0”}|二维码的线条颜色 接口C的参数: 参数|类型|默认值|说明 –|–|–|– path|String|-|不能为空,最大长度 128 字节 width|int|430|二维码的宽度 ######2.2.类型二 特点:

接口B:适用于需要的码数量极多的业务场景

  • 0.可接受页面参数较短
  • 1.通过该接口生成的小程序码,永久有效
  • 2.数量不做限制(截止今天,官方未对生成数量做限制)
  • 3.用户扫码后,可以在对应页面获取到二维码中scene字段下面的值
  • 4.B接口调用分钟频率受限(目前5000次/分钟,会调整)
  • 5.B接口没有path参数,B接口只能跳转到主页面上。

B接口每分钟调用频率受限(目前5000次/分钟),超出该限制会报错:45009,官方表示对该限制会做调整。 B接口根据传入参数不同可以用作:渠道统计和大致的场景入口区分(比如:连锁店中,餐厅A是一个二维码,餐厅B是另一个二维码)

接口B的参数: 参数|类型|默认值|说明 –|–|–|– scene|String|-|最大32个可见字符,只支持数字,大小写英文以及部分特殊字 page|String|-|必须是已经发布的小程序存在的页面(否则报错) width、auto_color、line_color|||和接口1一样

// 这是首页的 js
Page({
  onLoad: function(options) {
    // options 中的scene需要使用decodeURIComponent才能获取到生成二维码时传入的scene
    var scene = decodeURIComponent(options.scene)//参数二维码传递过来的参数
    var query = options.query.dentistId // 参数二维码传递过来的场景参数
  }
})

3.第三方二维码生成

好推二维码(芝麻小程序)

芝麻小程序

草料二维码

草料二维码

阿拉丁二维码

这里写图片描述

功能分析

功能|好推|草料|阿拉丁 –|–|–|– 费用:|免费|基础功能免费|基础功能免费 批量生成|X|支持|支持 路径带参数|支持|支持|支持 定制参数|支持|X|支持 带场景值|支持|X|支持 二维码统计(人数/次数等)|支持|X|支持 二维码样式定制|支持|支持|支持

《参考文档》

1.微信官方文档 2.小程序二维码和小程序带参数二维码生成 3.小程序社区: 跳坑《八十五》带参数二维码,返回数据保存为图片 4.W3C-微信小程序API 获取小程序页面二维码