##1.使用场景
1.医院场景:比如每个医生一个id,通过带参数二维码,扫码二维码就直接进入小程序医生页面
2.餐厅场景:比如每个菜一个二维码,通过扫码这个菜的二维码,进入小程序后,可以直接点这道菜,而不是要找菜铺。
3.电商场景:扫码二维码带参数,进入小程序直接购买,比如通过公众号,通过带参数二维码,用户长按识别,直接进入服装的购买页面,提高购买转换。
2.二维码生成
通过后台接口可以获取小程序任意页面的二维码,扫描该二维码可以直接进入小程序对应的页面。 小程序官方提供了3个二维码生成接口。可生成2种类型的二维码。
微信公众号支持带参二维码的批量生成,但是小程序目前不可以,如果数量巨大,比如需要10万个带不同参数的二维码,那官方提供的二维码的生成方式就不实用了(可以自己尝试写一个脚本挂在那里循环生成233)
######2.1.类型一 特点:
- 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 获取小程序页面二维码