微信小程序开发 专题
专题目录
您的位置:微信小程序开发 > 微信小程序开发专题 > 微信小程序API 获取小程序页面二维码
微信小程序API 获取小程序页面二维码
作者:--    发布时间:2019-11-20

获取二维码


通过后台接口可以获取小程序任意页面的二维码,扫描该二维码可以直接进入小程序对应的页面。目前微信支持两种二维码,小程序码(左),小程序二维码(右),如下所示:

小程序二维码

可以使用开发工具 1.02.1803130 及以后版本通过二维码编译功能调试所获得的二维码

qrcodecompile

获取小程序码

我们推荐生成并使用小程序码,它具有更好的辨识度。目前有两个接口可以生成小程序码,开发者可以根据自己的需要选择合适的接口。

接口a: 适用于需要的码数量较少的业务场景

接口地址:

https://api.weixin.qq.com/wxa/getwxacode?access_token=access_token

获取 access_token 详见文档

post 参数说明

参数类型默认值说明
pathstring 不能为空,最大长度 128 字节
widthint430二维码的宽度
auto_colorboolfalse自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
line_colorobject{"r":"0","g":"0","b":"0"}auth_color 为 false 时生效,使用 rgb 设置颜色 例如 {"r":"xxx","g":"xxx","b":"xxx"}

注意:通过该接口生成的小程序码,永久有效,数量限制见文末说明,请谨慎使用。用户扫描该码进入小程序后,将直接进入 path 对应的页面。

接口b:适用于需要的码数量极多,或仅临时使用的业务场景

接口地址:

https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=access_token

获取 access_token 详见文档

post 参数说明

参数类型默认值说明
scenestring 最大32个可见字符,只支持数字,大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~,其它字符请自行编码为合法字符(因不支持%,中文无法使用 urlencode 处理,请使用其他编码方式)
pagestring 必须是已经发布的小程序页面,例如 "pages/index/index" ,如果不填写这个字段,默认跳主页面
widthint430二维码的宽度
auto_colorboolfalse自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
line_colorobject{"r":"0","g":"0","b":"0"}auto_color 为 false 时生效,使用 rgb 设置颜色 例如 {"r":"xxx","g":"xxx","b":"xxx"}

注意:通过该接口生成的小程序码,永久有效,数量暂无限制。用户扫描该码进入小程序后,开发者需在对应页面获取的码中 scene 字段的值,再做处理逻辑。使用如下代码可以获取到二维码中的 scene 字段的值。调试阶段可以使用开发工具的条件编译自定义参数 scene=xxxx 进行模拟,开发工具模拟时的 scene 的参数值需要进行 urlencode

// 这是首页的 js
page({
  onload: function(options) {
    // options 中的 scene 需要使用 decodeuricomponent 才能获取到生成二维码时传入的 scene
    var scene = decodeuricomponent(options.scene)
  }
})

获取小程序二维码

接口c:适用于需要的码数量较少的业务场景

接口地址:

https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=access_token

获取 access_token 详见文档

post 参数说明

参数类型默认值说明
pathstring 不能为空,最大长度 128 字节
widthint430二维码的宽度

注意:通过该接口生成的小程序二维码,永久有效,数量限制见文末说明,请谨慎使用。用户扫描该码进入小程序后,将直接进入 path 对应的页面。

示例:

{"path": "pages/index?query=1", "width": 430}

注:pages/index 需要在app.json的 pages 中定义

bug & tip

  1. tip:通过该接口,仅能生成已发布的小程序的二维码。
  2. tip:可以在开发者工具预览时生成开发版的带参二维码。
  3. tip:接口a加上接口c,总共生成的码数量限制为100,000,请谨慎调用。
  4. tip: post 参数需要转成 json 字符串,不支持 form 表单提交。
  5. tip: auto_color line_color 参数仅对小程序码生效。

错误码

45009:b接口调用分钟频率受限(目前5000次/分钟,会调整),如需大量小程序码,建议预生成。

45029:a接口和c接口生成码个数总和到达最大个数限制。 

41030:b接口所传page页面不存在,或者小程序没有发布,请注意b接口没有path参数,传path参数虽然可以生成小程序码,但是只能跳主页面。

网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
373515719@qq.com
关于本站:
编程参考手册