模拟生成带参跳到指定页面的小程序码
一、准备工作
- 微信公众平台接口调试工具
- 小程序的唯一标识(appid)
- 小程序的密钥(secret)
二、获取access_token
打开微信公众平台接口调试工具,在参数列表中输入小程序的appid和secret,点击检查问题,如果appid和secret正确,则可以返回正确的access_token结果(图中下方的红框)
三、生成小程序码you三个接口,我采用的是接口B
接口B:适用于需要的码数量极多的业务场景
0)可接受页面参数较短
1)通过该接口生成的小程序码,永久有效
2)数量不做限制(截止今天,官方未对生成数量做限制)
3)用户扫码后,可以在对应页面获取到二维码中scene字段下面的值
4)B接口调用分钟频率受限(目前5000次/分钟,会调整)
5)B接口没有path参数,B接口只能跳转到主页面上。
接口地址:
https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=ACCESS_TOKEN
POST 参数说明
注意:通过该接口生成的小程序码,永久有效,数量暂无限制。用户扫描该码进入小程序后,开发者需在对应页面获取的码中 scene 字段的值,再做处理逻辑。使用如下代码可以获取到二维码中的 scene 字段的值。调试阶段可以使用开发工具的条件编译自定义参数 scene=xxxx 进行模拟,开发工具模拟时的 scene 的参数值需要进行 urlencode
// 这是首页的 js Page({ onLoad: function(options) { // options 中的 scene 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene var scene = decodeURIComponent(options.scene) } })
四、打开Postman
请求方式选择POST
URL一栏输入https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=(上一条中返回的access_token值)
Body中输入的格式为{"scene":"a=100","page":"pages/goods/goods","width":430,"auto_color":false,"line_color":{"r":"0","g":"0","b":"0"}}的json字符串
确认信息无误后,点击右上方Send按钮请求接口
五、点击第一个响应结果的选项卡Body,即可功成!
六、错误码
45009:B接口调用分钟频率受限(目前5000次/分钟,会调整),如需大量小程序码,建议预生成。
41030:B接口所传page页面不存在,或者小程序没有发布,请注意B接口没有path参数,传path参数虽然可以生成小程序码,但是只能跳主页面。
七、相关文章
官方文档: https://developers.weixin.qq.com/miniprogram/dev/api/qrcode.html
简书文章:https://www.jianshu.com/p/1713f23360de?from=timeline&isappinstalled=0