### 参数二维码
* * * * *
目前有2种类型的二维码:
1、临时二维码,是有过期时间的,最长可以设置为在二维码生成后的30天(即2592000秒)后过期,但能够生成较多数量。临时二维码主要用于帐号绑定等不要求二维码永久保存的业务场景。临时二维码的参数为32位非0整型。
2、永久二维码,是无过期时间的,但数量较少(目前为最多10万个)。永久二维码主要用于适用于帐号绑定、用户来源统计等场景。永久二维码参数分为整型及字符串型。整型永久二维码参数最大值为100000(目前参数只支持1--100000);字符串型永久二维码参数长度限制为1到64。
> 由于当前项目覆盖的本地粉丝群体几乎不会超过10万人,采用对用户生成永久二维码。
* * * * *
创建二维码的请求接口如下:
https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=TOKEN
整型永久二维码的POST数据格式如下。
~~~
{
"action_name":"QR_LIMIT_SCENE",
"action_info":{
"scene":{
"scene_id":1000
}
}
}
~~~
SDK中封装的生成参数二维码代码的方法,注意返回的是数组
~~~
public function create_qrcode($scene_type, $scene_id)
{
switch($scene_type)
{
case 'QR_LIMIT_SCENE': //永久
$msg = array('action_name' => $scene_type,
'action_info' => array('scene' => array('scene_id' => $scene_id))
);
break;
case 'QR_SCENE': //临时
$msg = array('action_name' => $scene_type,
'expire_seconds' => 2592000, //30天
'action_info' => array('scene' => array('scene_id' => $scene_id))
);
break;
case 'QR_LIMIT_STR_SCENE': //永久字符串
$msg = array('action_name' => $scene_type,
'action_info' => array('scene' => array('scene_str' => strval($scene_id)))
);
break;
}
$url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=".$this->access_token;
$res = $this->http_request($url, json_encode($msg));
$result = json_decode($res, true);
return $result;
}
~~~
SDK中根据上边生成的$ticket['ticket']得到参数二维码图片地址的方法
~~~
public function qrcode_imgurl($ticket)
{
$url = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=".urlencode($ticket);
return $url;
}
~~~
测试↓↓成功返回字符串,浏览器访问即是一张二维码图片,这里的scene_id=1000,在接下来的开发中自然是为每一个用户生成唯一的scene_id。
~~~
public function qrcode()
{
$weixin = new \weixin\Wxapi();
$ticket = $weixin->create_qrcode('QR_LIMIT_SCENE',1000);
$qrcode_img = $weixin->qrcode_imgurl($ticket['ticket']);
return var_dump($qrcode_img);
}
~~~
- 序言
- 联系方式,可一对一咨询
- 准备
- 安装twothink
- 第一章 公众号推广海报(已完成17.10.10)
- 0 整体思路
- 1.1 公众号接口绑定
- 1.2 引入微信SDK
- 1.3 响应文本请求
- 1.4 响应菜单请求
- 1.5 获取用户的信息
- 1.6 生成参数二维码
- 1.7 扫描参数二维码
- 1.8 建立数据表
- 1.9 处理关注事件
- 1.10 完整海报
- 1.11 推送海报
- 第二章 企业网站搭建
- 第三章 Excel表格处理(已完成17.12.04)
- 1.1 导入phpExcel
- 1.2 读取表单上传的excel表格
- 1.3 导出内容到表格
- 第四章 简易商城
- 1.1 梳理逻辑
- 1.2 商品上传
- 第五章 基于公号的任务系统
- 0 把逻辑理清楚
- 1.1 后台新建分类
- 1.2 完善tdetail方法
- 1.3 完善share方法
- 1.4 任务列表
- 第六章 前端使用mdui
- 1 基础页面
- 第七章 前端使用element(未来更新)
- 第八章 使用QueryList采集目标页面