利用小程序接口生成二维码【上】


参考文章:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/qr-code/getWXACodeUnlimit.html

有三种方法

接口 A(getWXACode): 适用于需要的码数量较少的业务场景
生成小程序码,可接受 path 参数较长,生成个数受限。
接口 B(getWXACodeUnlimit):适用于需要的码数量极多的业务场景
生成小程序码,可接受页面参数较短,生成个数不受限。
接口 C(createWXAQRCode):适用于需要的码数量较少的业务场景
生成二维码,可接受 path 参数较长,生成个数受限。

示例用的第二种方法

一:接口基础知识

请求地址:

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

主要参数(只选取了部分,其他参数见小程序帮助文档)

string access_token 接口调用凭证
string scene 最大32个可见字符,只支持数字,大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~,
  其它字符请自行编码为合法字符(因不支持%,中文无法使用 urlencode 处理,请使用其他编码方式) string page 必须是已经发布的小程序存在的页面(否则报错),例如 pages/index/index, 根路径前不要填加 /,不能携带参数(参数请放在scene字段里),
  如果不填写这个字段,默认跳主页面 number width 二维码的宽度,默认为 430px,最小 280px,最大 1280px

返回值

Object 返回的 JSON 数据包
errcode    number    错误码    
errmsg    string    错误信息

返回值说明

如果调用成功,会直接返回图片二进制内容,如果请求失败,会返回 JSON 格式的数据。

注意

1)POST 参数需要转成 JSON 字符串,不支持 form 表单提交。
2)接口只能生成已发布的小程序的二维码
3)调用分钟频率受限(5000次/分钟),如需大量小程序码,建议预生成

获取 scene 值
scene 字段的值会作为 query 参数传递给小程序/小游戏。用户扫描该码进入小程序/小游戏后,开发者可以获取到二维码中的 scene 值,再做处理逻辑。
调试阶段可以使用开发工具的条件编译自定义参数 scene=xxxx 进行模拟,开发工具模拟时的 scene 的参数值需要进行 encodeURIComponent

小程序 调用

Page({
onLoad (query) {
// scene 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene
const scene = decodeURIComponent(query.scene)
}
})

 

工具测试

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM