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

发布于 2018-04-26  89 次阅读


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 获取小程序页面二维码


赤夜染尽 千樱散落 零时夜雨 无茵之音