我们通过微信扫码二维码已经是十分频繁的操作了,为了满足用户渠道推广分析和用户帐号绑定等场景的需要,微信公众平台提供了创建带参数二维码的接口,通过产生的ticket,去获取二维码图片。当用户扫描这个二维码时,公众平台就会向你设置的接口推送扫描消息。

二维码分为临时二维码和永久二维码,介绍可以参考官方文档。https://developers.weixin.qq.com/doc/offiaccount/Account_Management/Generating_a_Parametric_QR_Code.html

为了区分推广渠道,二维码申请时提供了两种形式的自定义信息,一种是数据形式(设置scene_id值),另一种是字符串格式(设置scene_str值),有点类似android分发时的渠道码。

这里就以临时二维码为例来说明,提交格式如下:

数字形式

{"expire_seconds": 604800,"action_name": "QR_SCENE","action_info": {"scene": {"scene_id": 123}}
}

字符串形式

{"expire_seconds": 604800,"action_name": "QR_STR_SCENE","action_info": {"scene": {"scene_str": "bdmh"}}
}

然后通过平台提供的测试接口,可以生成二维码的ticket,当然有兴趣的可以自己写接口处理。当然记得提供access_token。

拿到ticket后,按照开发文档中提到的地址去申请二维码图片。带上ticket参数值。

https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=gQHG8DwAAAAAAAAAAS5odHRwOi8vd2VpeGluLnFxLmNvbS9xLzAyMkt2R1FHLWxlX2sxZlEzMTF1Y18AAgR0ifhdAwSAOgkA

访问之后,会有一个图片二维码下载到你本地。如下就是按照上面信息生成的临时二维码( "scene_str": "bdmh")。

然后我们用微信扫码,看看后台接收到的信息是什么样子。

对于已关注和未关注,是有所区别的。如果是已关注扫码,会直接推送到你的接口,Event=SCAN,对于未关注者扫码,扫码后不会触发接口,当你点击“关注公众号”后,会连同场景信息一起提交到你的接口,具体看下面信息。

WXMessgeBean修改。

package com.myweb.demo.bean;import javax.xml.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;@XmlRootElement(name="xml")
@XmlAccessorType(XmlAccessType.FIELD)public class WXMessgeBean {private String FromUserName;private String ToUserName;private long CreateTime;private String MsgType;private String Event;private String EventKey;private String Ticket;
}//省略了stter和getter

接收到的信息如图,看到设置的场景字符串scene_str通过节点EventKey传回来了,包括扫码者的微信号(ToUserName),这样你就可以根据不同的场景做一些数据的分析了。

已关注的数据返回。

未关注扫码后关注的数据返回。注意Event和EventKey和已关注是有区别的。

微信公众号开发(十)——扫描带参数二维码事件相关推荐

  1. Java微信公众号开发之创建带参数二维码

    生成带参数二维码接口文档:生成带参数二维码 一.介绍 1.1.目前有2种类型的二维码: 1. 临时二维码:临时二维码,是有过期时间的,最长可以设置为在二维码生成后的30天(即2592000秒)后过期, ...

  2. 微信公众平台开发(83) 生成带参数二维码

    本文介绍在微信公众平台上如何使用高级接口开发生成带参数二维码的功能. 一.场景二维码 为了满足用户渠道推广分析的需要,公众平台提供了生成带参数二维码的接口.使用该接口可以获得多个带不同场景值的二维码, ...

  3. 基于OpenJWeb平台的微信服务号开发培训-生成带参数二维码

    因为OpenJWeb平台已经集成了微信服务号接口,所以在OpenJWeb平台上开发微信服务号会起到事半功倍的作用.本文介绍如何使用微信公众号接口生成带参数二维码功能. 下面是开发及操作过程: (1)首 ...

  4. laravel生成微信公众号带参数二维码并响应扫描带参数二维码

    微信公众号后台ip白名单.网页接口域名之类的配置就不多说了,这里主要配置的是开发->基本配置->服务器配置(注:一旦启用改配置,公众号自动回复就会失效): 1.服务器地址(URL):这里要 ...

  5. 微信公众号扫描带参数二维码实现自动分组

    学习交流: CSDN资源下载地址:https://download.csdn.net/download/naruto668/10624558 之前的几个老客户找到我最近要做一个微信公众号生成带参数海报 ...

  6. 微信公众号扫描带参数二维码实现自动分组?

    2019独角兽企业重金招聘Python工程师标准>>> 最近很多人都在问微信公众号扫描带参数二维码实现自动分组,通过微号帮平台操作实现,这个功能不止如此,微信二维码来源统计分析.微信 ...

  7. 扫描带参数二维码推送消息不一样

    公众号不同二维码推送不同消息,通过生成带参数的二维码接口实现,直接根据开发文档编写代码,也可以用微号帮平台生成渠道二维码实现.对应公众号不同场景二维码推送给粉丝不同的消息. 1.参数二维码推送消息 使 ...

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

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

  9. 哪个微信公众号第三方平台可以设置渠道二维码?

    假如你分别在公交站台.地铁广告.电视媒体投放了一则广告,你可以通过渠道二维码将这三个推广渠道分别生成一个独立的二维码,通过不同二维码关注的粉丝,在微号帮平台可以清楚的知道粉丝来源,从而对推广渠道的效果 ...

最新文章

  1. 如何让EasyUI弹出层跳出框架
  2. Winform中设置ZedGraph的字体和间距不随图形的缩放而缩放
  3. 《走遍中国》珍藏版(五)
  4. Java设计模式笔记(3)抽象工厂模式
  5. 2021中国新物业服务发展白皮书
  6. androidfiletransfer_mac手机助手(Android File Transfer)下载_mac手机助手(Android File Transfer)官方下载...
  7. 二元一次函数最值问题_沪科版八年级上册数学12.3.1一次函数与二元一次方程微课知识点精讲+练习...
  8. python size和count_groupby 的妙用(注意size和count)
  9. 同时安装 Python 2 和 Python 3环境下 pip 的使用
  10. [转]适合过一辈子的人
  11. 浏览器打不开CSDN博客网站解决方法
  12. visio业务流程图教学_visio业务流程图怎么画
  13. 高一计算机网络技术应用计划,高一信息技术课教学计划
  14. mongodb 配置文件
  15. layuiAdmin自定义模块
  16. 超级计算机神威太湖之光储蓄量,中国超级计算机神威太湖之光世界最快,且总量排名榜单第一...
  17. 论文参考文献格式自动生成
  18. 领淘宝优惠券的微信小程序
  19. word禁止编辑,禁止复制
  20. 【python基础】递归函数

热门文章

  1. 【稻韵果香,以梦为家】云和恩墨大讲堂电子期刊第九期
  2. 使用spark处理天气数据并可视化
  3. 利用计算机教学的体会,利用多媒体教学设备心得体会
  4. ddr2是几代内存_教你区分DDR1 DDR2 DDR3内存条的方法
  5. 谁是好莱坞最牛的产品经理?
  6. 什么是建筑中的“光储直柔”
  7. javaEE的13个规范
  8. 什么因素引起了肾结石呢?
  9. 对于网站过度SEO优化会有哪方面的搜索引擎原理
  10. 【Java面试题】定义枚举类型Weekday,使用枚举类型配合switch语句,尝试如下功能: