获取二维码

通过后台接口可以获取小程序任意页面的二维码,扫描该二维码可以直接进入小程序对应的页面。

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

为满足不同需求和场景,这里提供了三个接口,开发者可挑选适合自己的接口。 A接口,生成小程序码,可接受path参数较长,生成个数受限。 B接口,生成小程序码,可接受页面参数较短,生成个数不受限。 C接口,生成二维码,可接受path参数较长,生成个数受限。

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

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

获取 access_token 详见文档

POST 参数说明

参数 类型 默认值 说明
path String   不能为空,最大长度 128 字节
width Int 430 二维码的宽度
auto_color Bool false 自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
line_color Object {"r":"0","g":"0","b":"0"} auth_color 为 false 时生效,使用 rgb 设置颜色 例如 {"r":"xxx","g":"xxx","b":"xxx"},十进制表示
is_hyaline Bool false 是否需要透明底色, is_hyaline 为true时,生成透明底色的小程序码

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

接口B:适用于需要的码数量极多的业务场景

接口地址:

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

获取 access_token 详见文档

POST 参数说明

参数 类型 默认值 说明
scene String   最大32个可见字符,只支持数字,大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~,其它字符请自行编码为合法字符(因不支持%,中文无法使用 urlencode 处理,请使用其他编码方式)
page String   必须是已经发布的小程序存在的页面(否则报错),例如 "pages/index/index" ,根路径前不要填加'/',不能携带参数(参数请放在scene字段里),如果不填写这个字段,默认跳主页面
width Int 430 二维码的宽度
auto_color Bool false 自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
line_color Object {"r":"0","g":"0","b":"0"} auto_color 为 false 时生效,使用 rgb 设置颜色 例如 {"r":"xxx","g":"xxx","b":"xxx"} 十进制表示
is_hyaline Bool false 是否需要透明底色, is_hyaline 为true时,生成透明底色的小程序码

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

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

获取小程序二维码

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

接口地址:

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

获取 access_token 详见文档

POST 参数说明

参数 类型 默认值 说明
path String   不能为空,最大长度 128 字节
width Int 430 二维码的宽度

注意:通过该接口生成的小程序二维码,永久有效,数量限制见文末说明,请谨慎使用。用户扫描该码进入小程序后,将直接进入 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参数虽然可以生成小程序码,但是只能跳主页面。

由于获取二维码并不常用,有兴趣的可以参考官方文档:https://developers.weixin.qq.com/miniprogram/dev/api/qrcode.html?search-key=%E8%8E%B7%E5%8F%96%E4%BA%8C%E7%BB%B4%E7%A0%81

微信小程序学习之路——API获取二维码相关推荐

  1. 【微信小程序】接口生成自定义首页二维码

    1.背景 在原有小程序上开发了一个新的功能,需要整合首页.但是为了不影响原有业务,且能测试新功能.所以需要新生成一个二维码,用户扫描该二维码可以跳转到新功能的页面. 2.方法 2.1生成二维码的接口: ...

  2. 微信小程序官方接口生成带参数二维码

    最近在做一个点餐项目需要生成带参数的二维码供顾客扫码点餐,网上有用许多二维码生成器,比如"草料二维码生成器",但是我还是偏爱用微信小程序官方提供的接口来实现. 首先贴一个文档地址, ...

  3. 微信小程序:实现长按扫描二维码

    小程序内置扫描二维码 image 使用小程序提供的image组件,image组件上有一个show-menu-by-longpress的属性,设置为true <image show-menu-by ...

  4. 微信小程序如何支持长按识别二维码功能

    1.previewImage 小程序wxml <image src="{{image}}" bindtap="imgLoad"></image ...

  5. 微信小程序web-view 实现长按识别二维码

    小程序长按识别二维码, 网页在小程序中长按识别二维码,web-view长按识别二维码 效果图: html 代码: <!DOCTYPE html> <html><head& ...

  6. 微信小程序点击按钮弹窗生成二维码图片+长按识别

    框架:uni-app 库:Painter ui框架:uView 1.X <u-modal class="show-close" v-model="showClose ...

  7. 微信小程序学习之路——API媒体

    媒体 图片 wx.chooseImage(Object) 从本地相册选择图片或者使用相机拍照,拍照时产生的临时路径小程序本次启动期间都可以正常使用,如果需要持久保存,就要主动调用wx.saveFile ...

  8. 获取其他人微信小程序的任意路径以及生成二维码

    如果想要获取别人的小程序页面路径和参数,也不是没有办法,我们只需要通过小程序平台提供的工具就可以简单的获取得到. 当然,前提是获取到目标小程序的APPID,这个应该很简单,没必要在这里阐述. 第一步, ...

  9. 微信小程序 最全 生成带参数二维码

    摸索了几天终于完成了,接口A B C 通用 ,接口B只能生成已发布的小程序 $appid='APPid'; $secret='你的小程序秘钥'; $tokenUrl="https://api ...

最新文章

  1. Eclipse开发初阶之Eclipse安装
  2. asp.net实现下载
  3. Silverlight入门系列]使用MVVM模式
  4. linux串口传文件除了rz,使用sz/rz基于串口传输文件
  5. React、PHP送书中奖名单,快看有你么!
  6. diy配置程序php,poscmsDiy字段之文件类型设计指南
  7. HTML的标签、属性大整理
  8. Module-Zero之组织单元(OU)管理【新增】
  9. wordpress中文路径出现404错误的解决办法
  10. 学长分享:计算机专业大一学生如何学习C语言?如何自学C语言?大学C语言学习视频教程谁有?
  11. C# 填充Excel
  12. python 标准库: csv
  13. linux u盘 随身,教你安装CentOS到U盘,制作随身Linux系统
  14. 关于win10访问u盘被拒绝,显示没有权限访问问题的解决方案
  15. [图形学]ASTC纹理压缩格式
  16. 华为Android10怎样root,华为手机怎么root?详细的root教程在此
  17. 基于C++的简易RLC电路仿真器与滤波器仿真测试
  18. 微信小程序使用阿里彩色图标
  19. 不用下载软件也能打开EPUB?详解这款支持网页端的阅读器
  20. 第8个HttpClient 例子.HttpClient+jsoup 获取网站相关信息

热门文章

  1. 最新成果展示:利用缺陷信息数据库探索界面工程,助力GaN基肖特基势垒二极管的研究
  2. Linux故障恢复技巧(转)
  3. linux安装核芯显卡驱动,请问Linux是不是毋须安装Intel核心显卡的驱动?
  4. 什么是“区块链ICO”?
  5. 我们有一间新的计算机房用英语怎么说,6S试题(资料)
  6. 地震勘探基础(十四)之地震反演
  7. RS485/Modbus 水表接入 ThingsCloud 实现远程抄表
  8. “个人所得税”手机APP下载注册指引
  9. 希沃展台如何使用_简单又实用的希沃视频展台
  10. 【线上峰会】如何一天掌握物联网全栈开发之道