【小程序】动态生成微信小程序二维码

这篇具有很好参考价值的文章主要介绍了【小程序】动态生成微信小程序二维码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微信官方提供的接口

官方文档中给我们提供了三个接口,分别应用于不同的场景
wxacode.createQRCode - - 接口文档地址->点击跳转
该接口需慎用,因为文档描述,该接口可生成的二维码是有限制的。

总共生成的码数量限制为 100,000

wxacode.get - - 接口文档地址->点击跳转
该接口需慎用,因为文档描述,该接口可生成的二维码是有限制的,且每日最大调用数为10000。

  • POST 参数需要转成 JSON 字符串,不支持 form 表单提交。
  • 接口只能生成已发布的小程序的二维码。
  • 与 wxacode.createQRCode 总共生成的码数量限制为 100,000,请谨慎调用。

wxacode.getUnlimited - - 接口文档地址->点击跳转

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

使用演示

【本演示,采用的是wxacode.get接口,使用的是uni.request请求方法】

  1. 第一步先获取到自己的accessToken。
  2. 请求接口路径,路径上需携带access_token=${access_token}的传值,且仅用此传值。
  3. 请求上需声明返回值类型为arraybuffer,不然会转换为utf-8影响后续操作,原因详见此处
  4. 使用官方提供的arrayBufferToBase64函数将arraybuffer转换为base64格式,再自行补充base64头部属性即可

代码演示

//获取access_token
uni.request({
	url: `https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${appid}&secret=${secret}`,
	success(res) {
		if(res.statusCode < 300){
			console.log(res.data);
		}else {
			console.error('Accesstoken get fail!');
		}
	}
})

//获取二维码
uni.request({
	url: `https://api.weixin.qq.com/wxa/getwxacode?access_token=${access_token}`,
	method:"POST",
	data: {
		path: `pages/index/index/?a=${a}`
	},
	responseType: 'arraybuffer',//此步很关键
	success(res) {
		//设置img标签上的src属性
		that.logoSrc = 'data:image/png;base64,' + uni.arrayBufferToBase64(res.data);
	},
	fail(res) {
		//...
	}
})

排坑说明

你在调用此接口的时候,往往会遇到一些奇奇怪怪的bug。
1.在成功调用接口的前提下,如果你的返回值出现乱码的情况,是因为返回值被转换成了utf-8的格式,此格式将无法再进行buffer处理,故你需要限制请求响应的数据格式。
2.返回结果说数据格式错误,如下

data format error rid: 63241b41-1f622122-62d884a8

可能你在传参的时候写的值名错误了,例如wxacode.getUnlimited接口传入的值名 对比 其他接口,path 被改成了 page

【欢迎各位大佬指正批评!】文章来源地址https://www.toymoban.com/news/detail-492600.html

到了这里,关于【小程序】动态生成微信小程序二维码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序怎样生成体验版二维码?微信小程序怎么转化为二维码?

    方法:在微信开发者工具界面,右上角,点击上传,如果提示成功,说明已经上传成功。     网址: 微信公众平台 微信公众平台,给个人、企业和组织提供业务服务与用户管理能力的全新服务平台。 https://mp.weixin.qq.com/ 在微信公众号平台登录,选择需要生成二维码的小程序

    2024年02月10日
    浏览(82)
  • 如何生成微信小程序二维码,小程序内页二维码

    你自己得有个微信公众号,只需要知道小程序的名字就可以了 生成小程序二维码 第一步编辑素材 第二步搜索小程序名字,然后回车,下一步 第三步选小程序码 小程序内页二维码 第一步编辑素材 第二步搜索小程序名字,然后回车,下一步 第三步点击‘获取更多路径’ 第四

    2024年02月15日
    浏览(50)
  • 微信小程序 — 生成二维码功能

    微信小程序实现生成二维码功能。需要用到canvas组件,设置 type为2d.  需要使用js包 weapp-qrcode-canvas-2d https://github.com/DoctorWei/weapp-qrcode-canvas-2d weapp-qrcode-canvas-2d 是使用新版canvas-2d接口在微信小程序中生成二维码(外部二维码)的js包。canvas 2d 接口支持同层渲染且性能更佳,可大

    2024年02月09日
    浏览(59)
  • 微信小程序之生成二维码

     var context = wx.createCanvasContext(\\\'mycanvas\\\'); // 获取画布 CanvasContext.fillText string text 在画布上输出的文本 number x 绘制文本的左上角 x 坐标位置 number y 绘制文本的左上角 y 坐标位置 number maxWidth 需要绘制的最大宽度,可选 CanvasContext.drawImage string imageResource 所要绘制的图片资源(网络

    2024年02月10日
    浏览(50)
  • 微信小程序实现预约生成二维码

    业务需求 :点击预约按钮即可生成二维码凭码入校参观~ 如下是博主自己写的wxml: 以及wxss: 去Gitee下载工具包: 二维码工具包 http://​ https://gitee.com/WeiDoctor/weapp-qrcode-canvas-2d ​ 下载zip:     将dist文件夹中的js文件全部复制到utils目录下: 如下代码必须完整的导入再页面

    2024年04月15日
    浏览(55)
  • 微信小程序生成二维码的 方式

    一:生成普通的二维码 https://open.weixin.qq.com/sns/getexpappinfo?appid=xxxpath=xxx?a=123 appid:小程序的appid path: 小程序的路径 a:小程序需要携带的参数,不传可以不写 二:在微信开发文档内生成 步骤1.登录微信公众平台 2.找到工具菜单 3.选择生成小程序码 具体里面的有生成规则,不懂得

    2024年02月12日
    浏览(54)
  • 微信小程序使用--如何生成二维码

    一、生成二维码 1.获取token 参照官方文档说明: https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/mp-access-token/getAccessToken.html 其中grant_type是写死的,appid和secret是注册小程序的时候获取的,然后会得到一个默认两小时失效的token 2.获取二维码 参照官方文档说明: https://developers.

    2024年02月04日
    浏览(61)
  • 【微信小程序二维码配置】微信公众平台配置二维码,小程序测试二维码,小程序动态二维码,然后扫码打开对应页面进行操作

    微信公众平台地址:微信公众平台 选择 开发管理 – 开发设置 – 扫普通链接二维码打开小程序 配置项 二维码规则: URL 为内含下载校验文件的服务器 URL , 可以加二级,比如我的 https://*** /preview , 二级随便写什么都可以 测试链接(选填): 匹配二维码规则地址,后加 *** 参数, 因

    2024年01月19日
    浏览(70)
  • 生成普通的微信小程序二维码

    1.登录微信小程序后台传送门 开发管理-开发设置-扫普通链接二维码打开小程序   在这里开通此功能,然后按微信定义的规则配置具体的地址,等正式上线的时候再发布该规则  2.然后按照配置的 二维码规则 (上图第三项) 去直接生成普通的二维码(可自行携带参数),然后微信扫一

    2024年02月14日
    浏览(61)
  • 微信小程序生成二维码海报并分享

    背景:点击图标,生成海报后,点击保存相册,可以保存 生成海报:插件wxa-plugin-canvas,此处使用页面异步生成组件方式,官网地址:wxa-plugin-canvas - npm 二维码:调用后端接口生成二维码 需要调用获取图片信息接口wx.getImageInfo(),获取到图片的宽高以做整体宽高配置 closePos

    2024年03月21日
    浏览(80)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包