微信小程序 获取二维码实例详解


Posted in Javascript onJune 23, 2017

 微信小程序 获取二维码实例详解

理论:

接口A: 适用于需要的码数量较少的业务场景 接口地址:(永久有效,数量有限,进入path对应的页面)

https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN
  path  String   不能为空,最大长度 128 字节
  width  Int   430(默认)   二维码的宽度
  auto_color 。。
  line_color 。。

接口B:适用于需要的码数量极多,或仅临时使用的业务场景(永久有效,数量暂无限制,将统一打开首页)

http://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=ACCESS_TOKEN
  scene  String 最大32个可见字符
  width  Int   430(默认)   二维码的宽度
//开发者需在首页根据获取的码中 scene 字段的值,再做处理逻辑。如下示例
Page({
 onLoad: function(options) {
  var scene = options.scene
 }
})

接口C:适用于需要的码数量较少的业务场景(永久有效,数量有限,进入path对应的页面)

https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=ACCESS_TOKEN
  path  String   不能为空,最大长度 128 字节
  width  Int   430(默认)   二维码的宽度

Bug & Tip

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

代码

1.接口需要access_token,access_token是公众号的全局唯一接口调用凭据。

2.access_token的存储至少要保留512个字符空间。

3.access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。

wx.request({
 // 获取token
 url: 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential',
 data: {
  appid: '***',
  secret: '***'
 },
 success(res) {
  wx.request({
   // 调用接口C
   url: 'https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=' + res.data.access_token,
   method: 'POST',
   data: {
    "path": "pages/meiTuan/meiTuan",
    "width": 430
   },
   success(res) {
    // res是二进制流,后台获取后,直接保存为图片,然后将图片返回给前台
    // 后台二进制怎么转图片?我也不会后台,学会了再贴代码
   }
  })
 }
})

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
在b/s开发中经常用到的javaScript技术
Aug 23 Javascript
javascript 函数使用说明
Apr 07 Javascript
jquery cookie的用法总结
Nov 18 Javascript
捕获和分析JavaScript Error的方法
Mar 25 Javascript
JavaScript中的闭包(Closure)详细介绍
Dec 30 Javascript
JavaScript中关联原型链属性特性
Feb 13 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
Sep 19 Javascript
webpack学习笔记之代码分割和按需加载的实例详解
Jul 20 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
Mar 09 jQuery
vue+VeeValidate 校验范围实例详解(部分校验,全部校验)
Oct 19 Javascript
jQuery实现验证用户登录
Dec 10 jQuery
JavaScript实现轮播图特效
Apr 10 Javascript
详谈表单格式化插件jquery.serializeJSON
Jun 23 #jQuery
angularJs的ng-class切换class
Jun 23 #Javascript
关于使用js算总价的问题
Jun 23 #Javascript
angular select 默认值设置方法
Jun 23 #Javascript
获取当前按钮或者html的ID名称实例(推荐)
Jun 23 #Javascript
小发现之浅谈location.search与location.hash的问题
Jun 23 #Javascript
微信JS SDK接入的几点注意事项(必看篇)
Jun 23 #Javascript
You might like
php中利用str_pad函数生成数字递增形式的产品编号
2013/09/30 PHP
javascript来定义类的规范小结
2010/11/19 Javascript
关于js日期转化为毫秒数“节省20%的效率和和节省9个字符“问题
2012/03/01 Javascript
在JavaScript中判断整型的N种方法示例介绍
2014/06/18 Javascript
JS实现清除指定cookies的方法
2014/09/20 Javascript
浅谈javascript中createElement事件
2014/12/05 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
jQuery实现隔行变色的方法分析(对比原生JS)
2016/11/18 Javascript
js实现界面向原生界面发消息并跳转功能
2016/11/22 Javascript
Angularjs使用ng-repeat中$even和$odd属性的注意事项
2016/12/31 Javascript
nodejs入门教程一:概念与用法简介
2017/04/24 NodeJs
Nodejs进阶:express+session实现简易登录身份认证
2017/04/24 NodeJs
Vue父组件调用子组件事件方法
2018/02/23 Javascript
Vue插槽原理与用法详解
2019/03/05 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
[00:12]DAC2018 no[o]ne亮相SOLO赛 他是否如他的id一样无人可挡?
2018/04/06 DOTA
在Python中处理列表之reverse()方法的使用教程
2015/05/21 Python
Python的Flask框架标配模板引擎Jinja2的使用教程
2016/07/12 Python
Anaconda多环境多版本python配置操作方法
2017/09/12 Python
python3.6 实现AES加密的示例(pyCryptodome)
2018/01/10 Python
python实现简单tftp(基于udp协议)
2018/07/30 Python
django进阶之cookie和session的使用示例
2018/08/17 Python
Python实现京东秒杀功能代码
2019/05/16 Python
python配置文件写入过程详解
2019/10/19 Python
python实现将json多行数据传入到mysql中使用
2019/12/31 Python
基于python修改srt字幕的时间轴
2020/02/03 Python
《童趣》教学反思
2014/02/19 职场文书
厨房管理计划书
2014/04/27 职场文书
结婚保证书范文
2014/04/29 职场文书
安全宣传标语
2014/06/10 职场文书
学生顶撞老师的检讨书
2014/09/17 职场文书
生日宴会家属答谢词
2015/09/29 职场文书
浅谈JS的二进制家族
2021/05/09 Javascript
Golang连接并操作MySQL
2022/04/14 MySQL
nginx sticky实现基于cookie负载均衡示例详解
2022/12/24 Servers
postgresql中如何执行sql文件
2023/05/08 PostgreSQL