1.填写授权回调页面的域名  (注意只有服务号才可以页面授权)

登录公众平台-->开发者中心-->接口权限表

2.代码如下

scope为snsapi_base 那么用户必须是关注了公众号才能取得信息

index.php

//scope=snsapi_base 实例

$appid='你的AppId';

$redirect_uri = urlencode ( 'http://你的域名/getUserInfo.php' );

$url ="https://open.weixin.qq.com/connect/oauth2/authorize?appid=$appid&redirect_uri=$redirect_uri&response_type=code&scope=snsapi_base&state=1#wechat_redirect";

header("Location:".$url);

getUserInfo.php

$appid = "你的AppId";

$secret = "你的AppSecret";

$code = $_GET["code"];

//第一步:取全局access_token

$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$secret";

$token = getJson($url);

//第二步:取得openid

$oauth2Url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=$appid&secret=$secret&code=$code&grant_type=authorization_code";

$oauth2 = getJson($oauth2Url);

//第三步:根据全局access_token和openid查询用户信息

$access_token = $token["access_token"];

$openid = $oauth2['openid'];

$get_user_info_url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";

$userinfo = getJson($get_user_info_url);

//打印用户信息

print_r($userinfo);

function getJson($url){

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$output = curl_exec($ch);

curl_close($ch);

return json_decode($output, true);

}

scope为snsapi_userinfo 用户不用关注公众号,也能取到信息,但是会有一个界面让用户去点击确认

index.php

$appid='你的AppId';

$redirect_uri = urlencode ( 'http://你的域名/getUserInfo.php' );

$url ="https://open.weixin.qq.com/connect/oauth2/authorize?appid=$appid&redirect_uri=$redirect_uri&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect";

header("Location:".$url);

getUserInfo.php

$appid = "你的AppId";

$secret = "你的AppSecret";

$code = $_GET["code"];

//第一步:取得openid

$oauth2Url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=$appid&secret=$secret&code=$code&grant_type=authorization_code";

$oauth2 = getJson($oauth2Url);

//第二步:根据全局access_token和openid查询用户信息

$access_token = $oauth2["access_token"];

$openid = $oauth2['openid'];

$get_user_info_url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";

$userinfo = getJson($get_user_info_url);

//打印用户信息

print_r($userinfo);

function getJson($url){

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$output = curl_exec($ch);

curl_close($ch);

return json_decode($output, true);

}

标签: 微信

顶一下

(0)

0%

踩一下

(0)

0%

php微信网页授权登录代码,php微信网页授权代码(获取用户信息)相关推荐

  1. 微信授权登录,authorize不执行;uniapp 获取用户信息权限失败;无法通过wx.getUserInfo与<button open-type=“getUserInfo“/>获取用户个人信息

    微信登录的接口又又又又改了 微信官方本次修改说明 wx.getUserProfile 小程序的open-data uniapp的open-data 为优化用户的使用体验,平台将进行以下调整: 202 ...

  2. 微信公众号开发--自定义菜单跳转页面并获取用户信息(续)

    之前写过一篇微信公众号开发–自定义菜单跳转页面并获取用户信息 由于当时是刚学习微信公众号开发当时的思路虽然可行,不过不是最好的,最近也用到了需要获取用户信息的地方,再次整理一下. 流程 注意点 ### ...

  3. 公众号如何跳转到页面php,图文详解微信公众号开发自定义菜单跳转页面并获取用户信息实例...

    这篇文章主要介绍了微信公众号开发 自定义菜单跳转页面并获取用户信息实例详解的相关资料,需要的朋友可以参考下 微信公众号开发 自定义菜单 请先读完本文再进行配置开发 请先前往微信平台开发者文档阅读&qu ...

  4. java自定义菜单跳转页面_微信公众号开发 自定义菜单跳转页面并获取用户信息实例详解...

    微信公众号开发 自定义菜单 请先读完本文再进行配置开发 请先前往微信平台开发者文档阅读"网页授权获取用户基本信息"的接口说明 在微信公众账号开发中,往往有定义一个菜单,然后用户点击 ...

  5. php 小程序登录授权解密,微信小程序授权登录,PHP解密数据,并返回用户信息token记住登录状态...

    首先创建一个项目,把这些代码都清空,我们自己写! 首先index.wxml,写一个button用于发起登录 index.wxml 点击授权 然后写index.js 通过wx.login()来获取cod ...

  6. 微信小程序开发是 demo中显示bug显示“获取用户信息失败,请检查网络“

    这是因为接口wx.getUserInfo 有变动,最简单的方法就是在 client/pages/index/index.wxml 中第一个用户登录测试的view里添加 <button open- ...

  7. IVX低代码平台——微信小程序获取用户信息

    写在前面 小程序可以通过方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系.本文将向大家展示低代码开发:小程序实现获取用户信息的方法,供大家参考. 文章目录 写在前面 开发概述 准备工作 用 ...

  8. 玩转微信小程序 之 获取用户信息以及玩转基本列表渲染(2019/04/14)

    LZ-Says:总是要各种颠沛流离,才能换得片刻安宁.努力让自己变得更好,加油- 前言 前几天,完成了微信小程序的首章,学习起来,还是多多少少有点坑,不舒服. 今天我们继续开启微信小程序 Study ...

  9. 小程序:登录页获取用户信息并传递用户数据到个人中心页

    步骤一:个人中心页添加"立即登录"按钮跳转至登录页 一.个人中心页的me.wxml代码 <view class="userinfo"><but ...

  10. 新浪微博开放平台,授权成功后获取用户信息

    最近做的一个ios app中需要用到第三方登录 新浪微博登录平台的sdk demo中没有只有登录和发微博功能,没有获取用户信息,看了一下sdk接口和官方文档,才发现需要发起https请求去获取用户信息 ...

最新文章

  1. valgrind 使用 kcachegrind 查看函数运行时间
  2. java tessbaseapi,T+开发者社区
  3. python重要吗-毫无基础,商英专业,Python真的有用吗?
  4. fekit前端代码模块化工具
  5. java空值转datetime,解决Java (Spring boot) 读取数据库字段,datetime 格式为null,抛出异常 Zero date value prohibited...
  6. php 取数值整数的函数是,PHP取整数函数常用的四种方法小结
  7. java整型转换为数组_基于java中byte数组与int类型的转换(两种方法)
  8. C#使用NLOG System.TypeInitializationException,类型初始值设定项引发异常
  9. eclipse 构建maven web工程
  10. springBoot 注入@Slf4j,框架中的方法无法调用。。。
  11. 程序关闭是总是出异常解决方法
  12. 485转以太网通讯测试软件,485转TCPIP转换模块 串口转以太网模块
  13. cactiEZ 使用
  14. 我的第一个Imx6ULL应用《百度图像识别》
  15. 367个公益宣传PPT模板免费下载网站
  16. c加加语言订餐系统代码,【加加餐饮管理系统--前台营业子系统|餐饮点菜收银软件】免费申请试用_选软件网...
  17. Android图片转化黑白图片,图像二值化,生成图像二值化后的黑白图像和图像矩阵(无压缩0,1矩阵),可灵活设置二值化值域
  18. CondaSSLError: OpenSSL appears to be unavailable on this machine.
  19. ACOUG年会归来(r11笔记第16天)
  20. 英语中提醒注意安全句子

热门文章

  1. c++11 yield函数的使用
  2. linux之V4L2摄像头应用流程
  3. Android开发之高仿三方授权登录的实现方案类似微信登录QQ登录微博登录人人网登录
  4. mysql在linux下的安装_mysql在linux下的安装
  5. Swift--字符串和字符(一)
  6. 操作系统难点解析之进程和线程
  7. 面向对象知识点之statickeyword的使用
  8. myeclipse无法启动tomcat的一种情况
  9. SpringMVC 生成json报 HTTP Status 406.错误的解决方法
  10. SQLALCHEMY_DATABASE_URI格式实例