因为最近项目需要微信每次授权登录后,获取用户信息,特别是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,最后获取到用户信息的方法了!
希望能帮助到大家!