博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【微信服务号开发】04.通过网页授权获取用户信息
阅读量:6337 次
发布时间:2019-06-22

本文共 2740 字,大约阅读时间需要 9 分钟。

配合这三篇实战操作

【微信服务号开发】01.接入指南
【微信服务号开发】02.文字消息和图文消息自动回复实现
【微信服务号开发】03.实战 回复知乎日报,返回8个最新知乎日报图文消息

微信开发者工具

开发文档

添加授权回调页面的域名

代码实现

把以下链接里面的参数替换掉

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect 若提示“该链接无法访

替换以下参数:

appid
redirect_uri
scope

替换的代码

确认登录后

页面会访问这个url

http://starks.ngrok.wdevelop.cn/act.php?code=0615P8s314BY1P1CVSq31r98s315P8sI&state=STATE

通过code换取网页授权access_token

代码实现

require_once('Curl.php');$code = $_GET['code'];$appid = "****************************";$secret = "****************************";$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid={$appid}&secret={$secret}&code={$code}&grant_type=authorization_code";echo "
";$data = Curl::CurlGet($url);$data = (array)json_decode($data);var_dump($data);

返回数据

string(339) "{"access_token":"4_rBAOjGbsn_mnhXIP-5vu6dFk98tNG76faFqgvUSjwivpY8eSnvRlfXBSKilHA3vFNSXHA8kB9k0CWfHSYDid3g","expires_in":7200,"refresh_token":"4_PdBbZZl13PuA1w2sKIDAz4WhZcbozeYNcJfFDHBxfpsofo8b_1UfgS6H_cVqe1wQwfEEhmqTnQ_tzFScjTd3xg","openid":"oPs5ouLW3qg7P6CLj-jS7M1XVtSw","scope":"snsapi_userinfo","unionid":"o28P7ww-ZMphcik-5ZSbkCr_QTQw"}"

拉取用户信息(需scope为 snsapi_userinfo)

代码实现

$access_token = $data['access_token'];$openid = $data['openid'];$userurl = "https://api.weixin.qq.com/sns/userinfo?access_token={$access_token}&openid={$openid}&lang=zh_CN";$userdata = Curl::CurlGet($userurl);$userdata = (array)json_decode($userdata);var_dump($userdata);

返回数据

string(343) "{"openid":"oPs5ouLW3qg7P6CLj-jS7M1XVtSw","nickname":"stark.wang","sex":1,"language":"zh_CN","city":"","province":"北京","country":"中国","headimgurl":"http:\/\/wx.qlogo.cn\/mmopen\/vi_32\/Q0j4TwGTfTJFHGcYsxe4TjLibiaDEicB8l2vv869kNLvfQ4P8WbO6adBmdTAH1s4h0JaH1oEZhU5icBApC6pXclF4Q\/0","privilege":[],"unionid":"o28P7ww-ZMphcik-5ZSbkCr_QTQw"}"

转换成数组格式

array(10) {  ["openid"]=>  string(28) "****************************"  ["nickname"]=>  string(10) "stark.wang"  ["sex"]=>  int(1)  ["language"]=>  string(5) "zh_CN"  ["city"]=>  string(0) ""  ["province"]=>  string(6) "北京"  ["country"]=>  string(6) "中国"  ["headimgurl"]=>  string(124) "http://wx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTJFHGcYsxe4TjLibiaDEicB8l2vv869kNLvfQ4P8WbO6adBmdTAH1s4h0JaH1oEZhU5icBApC6pXclF4Q/0"  ["privilege"]=>  array(0) {  }  ["unionid"]=>  string(28) "o28P7ww-ZMphcik-5ZSbkCr_QTQw"}

全部代码

Curl.php
act.php
";$data = Curl::CurlGet($url);$data = (array)json_decode($data);var_dump($data);$access_token = $data['access_token'];$openid = $data['openid'];$userurl = "https://api.weixin.qq.com/sns/userinfo?access_token={$access_token}&openid={$openid}&lang=zh_CN";$userdata = Curl::CurlGet($userurl);$userdata = (array)json_decode($userdata);var_dump($userdata);

转载地址:http://qoaoa.baihongyu.com/

你可能感兴趣的文章
基于Bootstrap的DropDownList的JQuery组件的完善版
查看>>
Hadoop MapReduce编程 API入门系列之分区和合并(十四)
查看>>
并查集的应用之求解无向图中的连接分量个数
查看>>
7个神奇的jQuery 3D插件
查看>>
在线浏览PDF之PDF.JS (附demo)
查看>>
波形捕捉:(3)"捕捉设备"性能
查看>>
AliOS Things lorawanapp应用介绍
查看>>
美国人的网站推广方式千奇百怪
查看>>
java web学习-1
查看>>
用maven+springMVC创建一个项目
查看>>
linux设备驱动第四篇:以oops信息定位代码行为例谈驱动调试方法
查看>>
redis知识点整理
查看>>
Hello World
查看>>
Spring3全注解配置
查看>>
ThreadLocal真会内存泄露?
查看>>
低版本mybatis不能用PageHeper插件的时候用这个分页
查看>>
javaweb使用自定义id,快速编码与生成ID
查看>>
[leetcode] Add Two Numbers
查看>>
elasticsearch suggest 的几种使用-completion 的基本 使用
查看>>
04-【MongoDB入门教程】mongo命令行
查看>>