超简单微信授权登录,获取微信code,获取access_tocken,最后获取到用户信息!

因为最近项目需要微信每次授权登录后,获取用户信息,特别是openid存入数据库(数据库已经存在openid则不在存入)!超简单微信授权登录,获取微信code,获取access_tocken,最后获取到用户信息!下面一起来看看吧!

  1、首先获取到appId和   appSecret

      $AppId = C('AppId'); //访问配置文件的appId
       $AppSecret = C('AppSecret'); //访问配置文件的appSecret

2、获取微信code

 // 获取微信 code
 $code = I('get.code');
 if (!$code){
       $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
       $redirectUri = $protocol . $_SERVER['HTTP_HOST'] . __SELF__;
       $redirectUri = urlencode($redirectUri);
       $url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=$AppId&redirect_uri=$redirectUri&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect";
       redirect($url);
  }

3、获取微信网页授权的access_token

// 获取微信网页授权 access_token($code、$AppSecret、$AppId都通过上面获取)
$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=$AppId&secret=$AppSecret&code=$code&grant_type=authorization_code";
$userInfoJson = file_get_contents($url);
$userInfo = json_decode($userInfoJson, true);

4、 获取微信授权登录的用户信息

// 获取微信用户信息
 $url = "https://api.weixin.qq.com/sns/userinfo?access_token={$userInfo['access_token']}&openid={$userInfo['openid']}&lang=zh_CN";
 $userDetailInfoJson = file_get_contents($url);
 $userDetailInfo = json_decode($userDetailInfoJson, true);
 return $userDetailInfo;

以上就是超简单微信授权登录,获取微信code,获取access_tocken,最后获取到用户信息的方法了!

希望能帮助到大家!

你可能感兴趣的:(❤,PHP,❤OAuth开放式授权,❤,API接口开发)