微信网页授权功能来获取用户信息(昵称或头像)之php实现
生活随笔
收集整理的這篇文章主要介紹了
微信网页授权功能来获取用户信息(昵称或头像)之php实现
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
授權(quán)頁面鏈接:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx14f******33aca21&redirect_uri=http://****.************.com/wechat/php/oauth_response.php&response_type=code&scope=snsapi_userinfo&state=STATE&connect_redirect=1#wechat_redirect
授權(quán)頁面會(huì)跳轉(zhuǎn)到一個(gè)帶有code參數(shù)的頁面,頁面地址沒變,簡單點(diǎn)說就是頁面刷新了個(gè)你所需要的code參數(shù)
<?php//獲取地址鏈接中的code參數(shù)$location = $_SERVER["QUERY_STRING"];$data = strstr($location,'&',true);$code = substr($data, 5);//curl 的post請求function CurlPost($url, $data){$curl = curl_init();curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);curl_setopt($curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);curl_setopt($curl, CURLOPT_URL, $url);if(!empty($data)){curl_setopt($curl, CURLOPT_POST, true);curl_setopt($curl, CURLOPT_POSTFIELDS, $data);}curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);$result = curl_exec($curl);curl_close($curl);return $result;}//get請求function CurlGet($url){return CurlPost($url, "");}//通過code換取網(wǎng)頁授權(quán)access_token$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx14f******33aca21&secret=332cab69b**********e5481b9bfe6ce&code=".$code."&grant_type=authorization_code";$rs = json_decode(CurlGet($url));//請求成功返回access_tokenif(isset($rs->{'access_token'})){//保存access_token$access_token = $rs->{'access_token'};$openid = $rs->{'openid'};//請求成功返回errcode}else if (isset($rs->{'errcode'})) {//# code...}//拉取用戶信息(需scope為 snsapi_userinfo)$user = json_decode(CurlGet("https://api.weixin.qq.com/sns/userinfo?access_token=".$access_token."&openid=".$openid."&lang=zh_CN"));echo $user->{'nickname'}; ?>
轉(zhuǎn)載于:https://www.cnblogs.com/nullman/p/6991625.html
總結(jié)
以上是生活随笔為你收集整理的微信网页授权功能来获取用户信息(昵称或头像)之php实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习笔记2017.6.21-引入JS
- 下一篇: javascript string re