微信公众号怎样获取用户基本信息(含是否已关注)
没时间多写,直接上代码。
第一步:获取code,其中的链接可以通过任何方式生成,也可以用微信公众号菜单
<?php$APPID='wx7********6beb9db'; //填写高级调用功能的app id$appsecret='ce03f4********09c3b80ae6f1c270d5'; //填写高级调用功能的密钥$REDIRECT_URI='http://www.***.***:81/wechat/test/getcode_2.php';$scope='snsapi_base';//$scope='snsapi_userinfo';//需要授权$state=1;$url='https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$APPID.'&redirect_uri='.urlencode($REDIRECT_URI).'&response_type=code&scope='.$scope.'&state='.$state.'#wechat_redirect';echo "url: ".$url;header("Location:".$url);?>
第二步: 按步骤获取:access_token、用户openid、用户基本信息
<?php$APPID='wx7********6beb9db'; //填写高级调用功能的app id$APPSECRET='ce03f4********09c3b80ae6f1c270d5'; //填写高级调用功能的密钥$code = $_GET["code"];//$get_token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$APPID.'&secret='.$APPSECRET.'&code='.$code.'&grant_type=authorization_code';$get_token_url="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$APPID&secret=$APPSECRET";$res = post($get_token_url);$json_obj = json_decode($res,true);//根据openid和access_token查询用户信息$access_token = $json_obj['access_token'];$get_openid_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$APPID.'&secret='.$APPSECRET.'&code='.$code.'&grant_type=authorization_code';$res = post($get_openid_url);$json_obj = json_decode($res,true);$openid = $json_obj['openid'];$get_user_base_info_url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";$res = post($get_user_base_info_url);$param = base64_encode($res);$url = "http://218.***.***.10:8151/HiRunAdd.aspx?p=$param";header("Location:".$url);
/*$get_userinfo_url = "https://api.weixin.qq.com/sns/userinfo?access_token=".$access_token."&openid=".$openid."&lang=zh_CN";$res = post($get_userinfo_url);//解析json$user_obj = json_decode($res,true);$_SESSION['user'] = $user_obj;print_r($user_obj);echo "<br/>";
*/function post($url){echo "url: $url <br/>";$ch = curl_init();curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_HEADER,0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);$res = curl_exec($ch);curl_close($ch);echo "resp: $res <br/><br/>";return $res;
}
?>
等到用户 基本信息格式如下:
{"subscribe": 1, //是否已订阅"openid": "oZA7CjhnBRG0SziGtMG216EK8L-g", //用户openid"nickname": "碎石头", //用户昵称"sex": 1, //用户性别"language": "zh_CN", //用户所用语言"city": "所在城市", "province": "所在省份", "country": "中国", "headimgurl": "http://wx.qlogo.cn/mmopen/qE9MKluetOnjPBkUB95h3vo4HsStkrKEQtYVgD6iad1yib75TW92OHQyZYgIialhMQ2tKe4iaciakAv92o0U1Y9cPug/0", //用户头像地址"subscribe_time": 1434330625, //用户订阅时间"remark": "", //备注"groupid": 0 //用户所在用户组,如果有分组的话 }
微信公众号怎样获取用户基本信息(含是否已关注)相关推荐
- vue h5微信公众号授权获取用户信息
vue h5微信公众号授权获取用户信息 1.申请测试账号 https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login 2.修改网页授权 ...
- 微信公众号授权获取用户OpenID和UnionId然后发生消息通知
微信公众号授权获取用户OpenID和UnionId然后发生消息通知 1.获取微信公众号code 1.微信公众拿取公众号appid和appSecret 2.网页域名授权,这里的域名拼接上html所在位置 ...
- 公众号h5获取手机号权限_微信公众号h5获取用户openId的方法和步骤
微信h5静大享上.是发了概开程态间些告人屏果会区.默.非静默授权获取用户openId的方法和步骤微和二第说,班.都年很过过事发工开宗定据发指互数个遍前互就: 一.openId是什么? openId享. ...
- 微信公众号h5获取用户openId的方法和步骤
微信h5静默.非静默授权获取用户openId的方法和步骤: 一.openId是什么? openId是用户在当前公众号下的唯一标识('身份证'),就是说通过这个openId,就能区分在这个公众号下具体是 ...
- 微信公众号开发--获取用户信息中文乱码的解决方案
在微信开发中我们会经常需要获取用户的信息. 微信给我们提供了获取用户信息的api, 地址为 https://api.weixin.qq.com/cgi-bin/user/info?access_tok ...
- 微信公众号网页获取用户信息
微信小程序开发交流qq群 173683895 承接微信小程序开发.扫码加微信. 效果图 html 代码: <!DOCTYPE html> <html><head ...
- 【微信公众号】获取用户信息
author:咔咔 wechat:fangkangfk 已经很久没有在写公众号了,今天在回顾一下 首先获取测试账号 然后配置域名 打开文档看看步骤:https://mp.weixin.qq.com/w ...
- 微信公众号开发__微信网页授权并获取用户基本信息(是否关注公众号、头像、昵称等)
本人最近要做微信公众号网页开发的项目,其中有个需求是判断用户是否关注公众号,由于之前没有接触过微信授权的东西,所以提前开始做调研.在度娘上看了好多博客.百度知道.百度经验.知乎问答等,还仔细阅读了微信 ...
- 企业微信接收消息服务器配置php,微信企业号配置及在公众号里获取用户信息
微信企业号配置及在公众号里获取用户信息 1.1.企业公众号里新建应用,回掉模式里自定义回调URL及密钥拿到,创建应答数据 配置成功后显示: 已成功配置企业服务器 URL http://75271.co ...
最新文章
- RGB-D对红外热像仪和毫米波雷达标定
- VS各种错误集成总结,持续更新
- 学习笔记(24):Python网络编程并发编程-进程与线程的区别
- 计算机知识太多了,计算机基础知识对程序员来说有多重要?
- springboot接收get和post请求参数
- python虚拟环境另类的搭建
- 各地女孩被刮开短裙的反映
- Each interface on the back of the fuselage
- 嵌入式工程师是硬件工程师么‘_硬件工程师修炼真经
- 森林病虫防治系统 (一)
- 论文阅读笔记(十五)——黑猩猩在野外的脸:用于预测灵长类身份和属性的对数欧几里得CNN
- heartbeat+drbd+mysql高可用架构
- python ctp接口_GitHub - keli/ctp-python: 穿透式监管版本CTP接口的Python封装
- FTP搜索引擎开发文档前言部分
- 计算机页面打不开非常卡,电脑卡的厉害几乎打不开网页怎么办
- Ant Design vue v-decorate 进行数据绑定
- 怎样把PDF转换成PPT?迅捷PDF转换器来助力
- JS 下拉菜单内容交换
- 乌镇·Conflux CTO伍鸣:让公链的“不可能三角”成为可能
- 【CSS】单行图片与文字垂直居中
热门文章
- 【高德地图API】Web地图开发系列(二)
- MySQL编码格式统一为UTF8
- NFT:使用 EIP-2981 开启 NFT 版税之旅
- 检查度量单位(Check Units of Measurement)
- android svga内存,iOS-SVGA动画渲染之内存优化
- 阿里巴巴中国站按关键字搜索商品 API 返回值说明
- 游戏角色跟场景建模那个好一点?
- 挑战“不可能三角”,公链设计、选型与开发实战
- C++学习从基础到高阶(基于黑马程序员教程)
- 基于51单片机的矩阵计算器设计