微信企业号OAuth2.0验证接口来获取成员的身份信息

时间:2023-02-25 20:57:50
<?php

$appid = "请输入您企业的appid";
$secret = "请输入您企业的secreat"; if (!isset($_GET['code'])) {
$this->redirect($this->qychat->getOauthRedirect($this->getUrl(), 'STATE', 'snsapi_userinfo', '1000003'));
  
}   
$code = $_GET["code"]; //获取登录进来的用户code header('content-type:text/html;charset=utf-8');//一定要加上这段代码,一定一定切记切记
$get_token_url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' . $appid . '&corpsecret=' . $secret . '';
$access_token = json_decode(file_get_contents($get_token_url));
$access_tokens = $access_token->access_token; //print_r( $access_tokens ); $get_Userid = 'https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=' . $access_tokens . '&code=' . $code . '&agentid=1000003';
$userIds = json_decode(file_get_contents($get_Userid));
$users = $userIds->UserId; if ($userIds->UserId) {
//print_r($users );
$url = "http://www.baidu.com/";
echo '<script language="JavaScript">window.location.href="跳转的页面index.html?userId=' . $users . '";</script>';
} else if ($userIds->OpenId) {
//print_r("error");
echo '<script language="JavaScript">alter("您当前未授权,请联系管理员!");</script>';
} /*
$openid = $access_token->openid;
$get_user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_tokens.'&openid='.$openid.'&lang=zh_CN'; //获取用户信息的url
$user_info = json_decode(file_get_contents($get_user_info_url)); //print_r($user_info); $_SESSION['user'] = $user_info;
echo $user_info->nickname;//得到用户信息
echo $user_info->headimgurl;
*/ public
function getOauthRedirect($callback, $state = 'STATE', $scope = 'snsapi_base', $agentid = '')
{
if ($agentid == '') {
$agentid = $this->agentid;
}
$url = self::OAUTH_PREFIX . self::OAUTH_AUTHORIZE_URL . 'appid=' . $this->appid . '&redirect_uri=' . urlencode($callback) . '&response_type=code&scope=' . $scope . '&agentid=' . $agentid . '&state=' . $state . '#wechat_redirect'; return $url; /**
* 跳转url
*/
public
function redirect($url = '/')
{
Header('Location: ' . $url);
exit;
} } ?>

微信企业号OAuth2.0验证接口来获取成员的身份信息的更多相关文章

  1. 微信公众号开发《一》OAuth2&period;0网页授权认证获取用户的详细信息,实现自动登陆

    原创声明:本文为本人原创作品,绝非他处转账,转载请联系博主 从接触公众号到现在,开发维护了2个公众号,开发过程中遇到很多问题,现在把部分模块功能在这备案一下,做个总结也希望能给其他人帮助 工欲善其事, ...

  2. 微信企业号OAuth2验证接口实例&lpar;使用SpringMVC&rpar;

    微信企业号OAuth2验证接口(使用SpringMVC) 企业应用中的URL链接(包含自己定义菜单或者消息中的链接).能够通过OAuth2.0来获取员工的身份信息. 注意.此URL的域名,必须全然匹配 ...

  3. Java反射理解(四)-- 获取成员变量构造函数信息

    Java反射理解(四)-- 获取成员变量构造函数信息 步骤 获取成员变量信息: obj.getClass() 获取类类型对象 成员变量也是对象,java.lang.reflect.Field 类中封装 ...

  4. PHP微信公众平台OAuth2&period;0网页授权,获取用户信息代码类封装demo(二)

    一.这个文件微信授权使用的是OAuth2.0授权的方式.主要有以下简略步骤: 第一步:判断有没有code,有code去第三步,没有code去第二步 第二步:用户同意授权,获取code 第三步:通过co ...

  5. asp&period;net 、C&num;实现微信企业号OAuth2认证

    以微信企业号作为入口的应用,几乎都会遇到需要应用系统中个人信息和微信用户关联问题.从而进行其他业务处理.目前所做项目采取在企业号通讯录添加自定义字段存入应用系统用户信息表中唯一标识UserGuid进行 ...

  6. 微信开发——OAuth2&period;0授权

    微信公众平台最近新推出微信认证,认证后可以获得高级接口权限,其中一个是OAuth2.0网页授权,很多朋友在使用这个的时候失败了或者无法理解其内容,希望我出个教程详细讲解一下,于是便有了这篇文章. 一. ...

  7. oauth2&period;0协议接口-第一篇-api逻辑

    开放平台是支持OAuth2.0和RESTful协议的资源分享平台,经过授权的合作伙伴可以读取和写入资讯.用户.文件.数据库等资源. 1.创建数据库表结构 CMSSyncClient(数据同步客户端) ...

  8. php 微信公众平台OAuth2&period;0网页授权,获取用户信息代码类封装demo

    get_wx_data.php <?php /** * 获取微信用户信息 * @author: Lucky hypo */ class GetWxData{ private $appid = ' ...

  9. 微信网页授权-公众号支付(获取openid、用户信息等)

    名词解释: openid 用户唯一标识,请注意,在未关注公众号时,用户访问公众号的网页,也会产生一个用户和公众号唯一的OpenID 业务功能描述:实现H5页面可以在微信浏览器里面进行微信支付,所以需要 ...

随机推荐

  1. Android模拟器检测常用方法

    在Android开发过程中,防作弊一直是老生常谈的问题,而模拟器的检测往往是防作弊中的重要一环,接下来有关于模拟器的检测方法,和大家进行一个简单的分享. 1.传统的检测方法. 传统的检测方法主要是对模 ...

  2. PAT &lpar;Basic Level&rpar; Practice (中文)1022 D进制的A&plus;B

    1022 D进制的A+B 输入两个非负 10 进制整数 A 和 B (≤2^30^−1),输出 A+B 的 D (1<D≤10)进制数. 输入格式: 输入在一行中依次给出 3 个整数 A.B 和 ...

  3. BZOJ&period;1430&period;小猴打架&lpar;Prufer&rpar;

    题目链接 猴子之间的打架是棵无根树,有\(n^{n-2}\)种可能:同时n-1个过程的排列是\((n-1)!\) //820kb 104ms #include <cstdio> const ...

  4. Git 学习笔记--删除错误提交的commit

    如果不小心把错误的commit给commit了,可以对其进行撤销 1.使用git log查看commit日志,找到错误提交前一版本commit的哈希值; 2.使用git reset --hard co ...

  5. J - FatMouse&&num;39&semi;s Speed

    p的思路不一定要到最后去找到ans:也可以设置成在中间找到ans:比如J - FatMouse's Speed 这个题,如果要是让dp[n]成为最终答案的话,即到了i,最差的情况也是dp[i-1],就 ...

  6. javascript基础拾遗&lpar;十&rpar;

    1.支持ES6标准的浏览器 IE10+ Chrome Safari Firefox 移动端浏览器统一都支持 需要注意的是,不同浏览器对各个特性的支持也不一样 2.window对象 当前浏览器窗口对象 ...

  7. JavaScrip——练习&lpar;做悬浮框再进一步:悬浮窗后缀悬浮窗——用this&period;className&rpar;

    对悬浮窗进一步改进: 用this.className 可以省略script <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitio ...

  8. Bootstrap导航栏

    导航栏: <div id="menu-nav" class="navbar navbar-default navbar-inverse navbar-fixed-t ...

  9. 【&period;net开发者自学java系列】使用Eclipse开发SpringMVC(1)

    第一篇随笔,有点紧张.有错别字是正常的.... 好了,自我描述下.我是一个有几年.net开发经验的老菜鸟.是的,老菜鸟.别跟我讨论底层,别跟我讨论协议.TMD啥都不会. 为什么要学JAVA,我也不想, ...

  10. 2018 ACM-ICPC 北京网络赛

    Problem A 最短路,跑一下dij就可以了. Problem B Problem C 按照题意模拟,不过坑点很多 1.注意字典序: 2.注意挑战的时候失败的那个人要把当前所有桌子上的牌都拿走 P ...