微信公众平台带参数二维码配置工具的实现

配置带参数的二维码同样需要先获取Access Token,获取方法在上一篇文章中有描述:http://www.cnblogs.com/leoyoungblog/p/5032249.html

利用获取到的Access Token,可以创建二维码的Ticket。通过POST方法向服务器提交相关信息,JS代码如下:

 1         function getTicket()
 2         {
 3             var url = "qrcode_manage.php?access_token="+$("#accessToken").val();
 4             var qrcode_type = $("#qrType").val();
 5             var qrcode_scene_id = $("#qrSceneId").val();
 6             $.post(url,
 7                 {
 8                     "qrcode_type":qrcode_type,
 9                     "qrcode_scene_id":qrcode_scene_id
10                 },
11                 function (data,status) {
12                     var result = eval("("+data+")");
13                     $("#ticketInfo").css("display","block");
14                     if(typeof (result["errcode"])!="undefined")
15                     {
16                         var errorInfo = "错误代码:"+result["errcode"]+";错误信息:"+result["errmsg"];
17                         $("#ticketInfo").html(errorInfo);
18                         $("#getQrcodeBtn").attr("disabled","disabled");
19                     }
20                     else
21                     {
22                         var successInfo = "获取Ticket 成功,Ticket:" + result["ticket"];
23                         successInfo += "<br>url:" + result["url"];
24                         $("#ticket").val(result["ticket"]);
25                         $("#ticketInfo").html(successInfo);
26                         $("#getQrcodeBtn").removeAttr("disabled");
27                     }
28                 }
29             );
30         }

服务器端进行转发的PHP代码如下:

 1     $access_token = $_GET["access_token"];
 2     $api_url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token={$access_token}";
 3     $qrcode_type = $_POST["qrcode_type"];
 4     $qrcode_scene_id = (int)$_POST["qrcode_scene_id"];
 5     $qrcode_array = array();
 6     if($qrcode_type == "QR_SCENE")
 7     {
 8         $qrcode_array["expire_seconds"] = 604800; //七天
 9         $qrcode_array["action_name"] = "QR_SCENE";
10     }
11     else
12     {
13         $qrcode_array["action_name"] = "QR_LIMIT_SCENE";
14     }
15
16     $qrcode_array["action_info"]["scene"]["scene_id"] = $qrcode_scene_id;
17     $qrcode_json = json_encode($qrcode_array);
18     $ch = curl_init();
19     curl_setopt($ch,CURLOPT_URL,$api_url);
20     curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
21     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
22     curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
23     curl_setopt($ch, CURLOPT_POST, 1);
24     curl_setopt($ch, CURLOPT_POSTFIELDS, $qrcode_json);
25     $json_result = curl_exec($ch);
26     curl_close($ch);
27     echo $json_result;

之后,可以通过Ticket换取二维码,JS代码如下:

1         function getQrcode()
2         {
3             var ticket = $("#ticket").val();
4             var date = new Date();
5             var url = "qrcode_manage.php?ticket="+ticket+"&time="+date.getTime();
6             $("#qrcode").attr("src","qrcode_manage.php?ticket="+ticket+"&time="+date.getTime());
7         }

服务器端进行转发的PHP代码如下:

    $ticket = $_GET["ticket"];
    $api_url = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket={$ticket}";
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$api_url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    $qrcode_result = curl_exec($ch);
    curl_close($ch);
    echo $qrcode_result;

实现效果可访问:

http://leo07.sinaapp.com/qrcode_manage.html

时间: 2024-08-06 23:25:12

微信公众平台带参数二维码配置工具的实现的相关文章

微信公众号带参数二维码怎么生成?

微信公众平台提供了生成带参数二维码的接口.使用该接口可以获得多个带不同场景值的二维码,用户扫描后,公众号可以接收到事件推送.二维码分为临时二维码和永久二维码!就算你不用代码也没关系,使用微号帮平台渠道二维码生成,轻松完成带参数二维码生成 1.登录微号帮平台操作 已注册用户,输入用户名密码登录即可:未注册用户,点击注册按钮注册一个即可. 2.选择要生成带参数二维码的服务号选择微号帮服务号,已微信认证的服务号才有生成带参数二维码的功能 3.选择渠道二维码生成即带参数二维码生成进入这个功能后,可以生成

微信公众号带参数二维码的使用?

带参数的二维码:使用微号帮平台生成,每一个二维码都带有参数,可以统计关注的每一个粉丝从哪里来的,做到渠道场景分析,方便以后进行粉丝精细化运营,使用微号帮平台其他发信息功能,针对性推送信息给公众号粉丝. 1.创建渠道二维码从微号帮后台高级功能点击[渠道二维码生成],右侧选择+创建渠道二维码 2.[0515卡券发放]实例创建[0515卡券发放],准备通过带参数二维码向粉丝发放卡券 3.扫码弹出信息设置卡券带参数二维码设置弹出卡券领取 4.卡券设置选择公众号后台已经制作好的卡券二维码,默认卡券二维码只

php微信开发之带参数二维码的使用

最近做微信PC端网页微信相关功能的开发,从一个新手的角度来说,微信公众号的文档还是不好理解的,网上找的帖子大都也都基本上是复制微信公众平台上给的文档,开发微信带参数二维码过程中还是遇到不少坑的,在此把我的开发过程比较详细的记录下,希望对大家有所帮助. 我本次开发使用的是认证服务号. 1 接入首先进入微信公众号 -> 基本配置 下面是基本配置的页面,在URL中填写服务器地址,这个地址就是接受微信推送事件的一个接口,我是使用thinkPHP框架开发的程序,在其中一个Module(Decoration

微信带参数二维码保存至本地

原文:微信带参数二维码保存至本地 怎么生成带参数二维码我就不说了接口自己看 生成带参数的二维码 有人会说生成了带参数二维码都已经生成了为什么还要保存到本地呢  具体需求是这样的 要将生成的带参数二维码打包发给图片制作商制作 一个个另存为浪费时间 别的不说了说重点 public static void SaveQrCodeImage(string strUrl) { try { System.Net.Http.HttpClient client = new System.Net.Http.Http

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

本文介绍在微信公众平台上如何使用高级接口开发生成带参数二维码的功能. 一.场景二维码 为了满足用户渠道推广分析的需要,公众平台提供了生成带参数二维码的接口.使用该接口可以获得多个带不同场景值的二维码,用户扫描后,公众号可以接收到事件推送. 目前有2种类型的二维码,分别是临时二维码和永久二维码,前者有过期时间,最大为1800秒,但能够生成较多数量,后者无过期时间,数量较少(目前参数只支持1--100000).两种二维码分别适用于帐号绑定.用户来源统计等场景. 用户扫描带场景值二维码时,可能推送以下

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

本文介绍在微信公众平台上如何使用高级接口开发生成带参数二维码的功能. 一.场景二维码 为了满足用户渠道推广分析的需要,公众平台提供了生成带参数二维码的接口.使用该接口可以获得多个带不同场景值的二维码,用户扫描后,公众号可以接收到事件推送. 目前有2种类型的二维码,分别是临时二维码和永久二维码,前者有过期时间,最大为1800秒,但能够生成较多数量,后者无过期时间,数量较少(目前参数只支持1--100000).两种二维码分别适用于帐号绑定.用户来源统计等场景. 用户扫描带场景值二维码时,可能推送以下

微信公众平台生成带参数二维码

<?php // +---------------------------------------------------------------------- // | 获取微信公众带参数二维码 // | Author: wzb [email protected] // +---------------------------------------------------------------------- namespace Mob\Controller; use Think\Contr

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

最近很多人都在问微信公众号扫描带参数二维码实现自动分组,通过微号帮平台操作实现,这个功能不止如此,微信二维码来源统计分析.微信带参数二维码统计分析.微信渠道二维码统计分析.自动生成微信二维码统计分析.微信海报二维码统计分析管理平台(地推派传单提供有效渠道分析).解决了微信公众号地推派单推广渠道跟踪的问题,可以实时进行监控派单推广渠道的扫码微信的关注,取消,新增,净增等相关数据,实时进行数据分析,为推广方向提供有了强有力的帮助和分析,同时对派单人员进行有效的考核,比如每个派单人员现场扫码的关注用户

C#微信公众号接口开发,灵活利用网页授权、带参数二维码、模板消息,提升用户体验之完成用户绑定个人微信及验证码获取

一.前言 当下微信公众号几乎已经是每个公司必备的,但是大部分微信公众账号用户体验都欠佳,特别是涉及到用户绑定等,需要用户进行复杂的操作才可以和网站绑定,或者很多公司直接不绑定,而是每次都让用户填写账号密码.作为微信接口开发人员我们知道网页授权可以用作微信网页用作安全登录,带参数二维码的使用用作记录用户来源,模板消息用作购物消费等消息的通知,但是很少看到有综合利用这些高级接口做出体验比较好的公众账号,这里分享一些我开发的用户绑定和验证码的一些心得.所需要的接口有基础的回复.网页授权.带参数二维码.