微信公众号开发(十) |
您所在的位置:网站首页 › 通辽信息平台二维码 › 微信公众号开发(十) |
我们通过微信扫码二维码已经是十分频繁的操作了,为了满足用户渠道推广分析和用户帐号绑定等场景的需要,微信公众平台提供了创建带参数二维码的接口,通过产生的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和已关注是有区别的。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |