前言:

想要获取微信小程序带参数二维码,如这种:

官方文档只说了获取小程序码和二维码的三种接口及调用(参考链接:https://developers.weixin.qq.com/miniprogram/dev/api/qrcode.html),但是自己模拟接口调用,返回的数据并不是我们现象中base64位的图片类型,而是一堆乱码。如下图:

经过百度得知这就是一个二进制的流文件,需要后端进行相应转换(感兴趣的可以查看:后端转换二进制流为图片的地址),感觉自己转换还挺麻烦的,最后采用了火狐浏览器插件的方式进行转换了,很快速的得到了想要的二维码。

注:由于需要给线下物料提供方形二维码,这里以接口C为例进行说明。

准备工作:

下载安装火狐浏览器。

一. 获取access_token:

1. 获取appid、secret:

小程序后台——设置——开发设置界面查询appid、secret(没技术含量,不懂的可以百度)

2. 打开微信公众平台接口调试工具,接口列表选择“获取access_token接口/token”,然后填写appid,secret,点击下边“检查问题”按钮;

3. 点击下边“检查问题”按钮之后,能看到按钮下边的响应数据,响应数据中已经有access_token的值了,复制这个值出来,下边就是使用火狐浏览器的插件获取小程序二维码了。

二. 安装火狐浏览器测试接口插件(RESTClient)

1. 安装火狐浏览器,点击右上角菜单图标,在弹出的快捷菜单中选择“附加组件”:

2. 点击“查看更多附加组件”:

3. 搜索“RESTClient”,搜索结果中点击进入“RESTClient”:

4. 点击——添加到Firefox:

5. 等待插件安装完成;

6. 插件安装完成之后,浏览器右上角会新增一个暗红色的图标,如图:

这个图标就是“RESTClient”入口了。

三. 生成小程序二维码:

1. 点击火狐浏览器右上角的RESTClientD的图标:

2. 设置请求方式为“post”:

3. 设置网址格式:

点击如图圈中的图标, 下拉框点选“文件型(Blog)”——很重要,一定要设置:

PS:经验证,如果未设置网址类型,第一次从右上角插件按钮入口点进来的时候会出现一个重新选择网址类型的弹窗,引导用户设置网址类型。但是如果页面刷新过,即使没有设置网址类型,则请求也可以成功,就是返回信息会为空的。所以最好一开始就设置好。

4. 把自己前边获取到的access_token拼接到小程序二维码api,然后填写到网址这里:

5. 正文这里填写POST 参数,具体参数根据对应接口和自己需求进行相应设置:

6. 设置完成,点击网址右侧的发送按钮:

7. 查看下方http相应部分,可以看到请求成功,出现http相应内容(小程序二维码的文件流),以及Http响应预览(图形二维码);

8. 点击“HTTP响应预览”,就能看到生成的小程序二维码了。

至此,成功生成小程序二维码。

注:

1. 微信官方提供的三种接口都可以用这个工具进行图形码生成的,可以根据自己的需要生成对应的图形码;

2. 使用restclient插件,如果发送请求之后响应内容为空,如下图(即使有“文件型”),那么需要关闭当前页面,重新点击浏览器右上角的插件入口进入页面才可以。

个人原创,转载请注明来源地址:https://www.cnblogs.com/xyyt/p/9646727.html

微信小程序开发——获取小程序带参二维码全流程的更多相关文章

  1. mac版微信web开发者工具(小程序开发工具)无法显示二维码 解决方案

    微信小程序概念的提出,绝对可以算得上中国IT界惊天动地的一件大事,这可能意味着一场新的开发热潮即将到来, 我也怀着激动的心情准备全身心投入其中,不过截止目前,在官方网站上下载的最新版本都无法使用,打开 ...

  2. 【转】mac版微信web开发者工具(小程序开发工具)无法显示二维码 解决方案

    转自:https://www.cnblogs.com/stevenluo/p/6030445.html   微信小程序概念的提出,绝对可以算得上中国IT界惊天动地的一件大事,这可能意味着一场新的开发热 ...

  3. 微信小程序开发——使用第三方插件生成二维码

    需求场景: 小程序中指定页面需要根据列表数据生成多张二维码. 实现方案: 鉴于需要生成多张二维码,可以将生成二维码的功能封装到组件中,直接在页面列表循环中调用就好了.也可以给组件添加slot,在页面调 ...

  4. 小程序对于华为Oppo的canvas二维码渲染数据量大

    setTimeout(()=>{ ctx.draw(false, function (e) { options.callback && options.callback(e); ...

  5. 微信蓝牙设备开发教程之获取设备deviceid和二维码(3)

    文章转载地址  http://www.vxzsk.com/87.html  设备授权 调用 设备授权新接口 ,获取deviceid和二维码,然后利用获取到的deviceid更新设备属性(如mac地址, ...

  6. 微信获取ticket及生成二维码(临时或永久)

    微信获取ticket及生成二维码(临时或永久) curl.php---- define("APPID",""); define("APPSECRET& ...

  7. java、python、golang等开发语言如何快速生成二维码?

    免费二维码生成途径非常多!比如比较有名的草料二维码,如果只是简单的使用,用它就足够了.但是如果想大规模的生成,那就不太合适了.再者很多工具都没办法在二维码中加入logo(像微信二维码一样). 接下来, ...

  8. 微信小程序开发工具使用与设计规范(二)

    [未经作者本人同意,请勿以任何形式转载] 上一篇文章主要分析了微信小程序应用场景和优劣势.本篇你可以学习到: 如何使用小程序开发工具写一个Hello World 微信小程序设计规范 微信小程序项目结构 ...

  9. 微信小程序开发 [01] 小程序基本结构和官方IDE简介

    1.小程序账户注册 实际上在进行开发时没有注册小程序账户也是可以的,官方提供的IDE提供实时编译模拟预览,和当前你有没有绑定小程序账户没有关系. 当然,最终你要正式上线你的小程序的话,肯定还是需要账户 ...

随机推荐

  1. Git 上传文件到 码云 gitee

    1:git bash 执行如下 git config –global user.name “eason” git config –global user.email “your email@qq.co ...

  2. 现学现卖——Keil uVision 使用教程

    Keil uVision 使用教程 1.如果有旧的工程在,先关闭旧工程.Project -> Close Project2.新建工程.Project -> New uVision Proj ...

  3. flash builder 4.7 打开闪退解决办法

    删除文件 /Users/apple/Documents/Adobe Flash Builder 4.7/.metadata/.plugins/org.eclipse.ui.workbench/work ...

  4. Navicat Premium 连接Oracle 数据库(图文教程)

    一.需要准备的软件 Navicat premium 32位 官方下载地址:http://www.navicat.com.cn/products/navicat-premium Instant Clie ...

  5. Swap Nodes in Pairs LeetCode题解

    做完这个题目,感觉LeetCode的题目出的真好... 这种题,如果让我在面试时候纸上写代码,肯定会挂的. 我昨天晚上看的题目,昨天脑子是懵的,放下了.今天早上来做. 一开始做,提交,果然错了.写的代 ...

  6. jquery事件绑定与事件委托

    //事件绑定简写形式 $(".div2 button").click(function () { $(".div1").scrollTop(0) }) //写全 ...

  7. KVM虚拟化技术(二)KVM介绍

    KVM:Kernel Virtual Machine KVM是基于虚拟化扩展的x86硬件,是Linux完全原生的全虚拟化解决方案.部分半虚拟化支持,主要是通过半虚拟网络驱动程序的形式用于Linux和W ...

  8. SQL Server 用角色(Role)管理数据库权限

    当数据库越来越多,连接到数据库的应用程序,服务器,账号越来越多的时候,为了既能达到满足账号操作数据权限需求,又不扩大其操作权限,保证数据库的安全性,有时候需要用角色来参与到权限管理中,通过角色做一个权 ...

  9. Django使用自定义的authentication登录认证

    import ldap class LDAPMgmt(): def __init__(self): self.ldap_host = 'xxx' self.ldap_base_dn = 'ou=xx, ...

  10. ArcGIS案例学习笔记-查找重叠的多边形

    ArcGIS案例学习笔记-查找重叠的多边形 联系方式:谢老师,135-4855-4328,xiexiaokui@qq.com 目的:对于多边形图层,查找具有重叠(相互覆盖)的面 数据: 方法: 1. ...