溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php版微信公眾平臺之微信網(wǎng)頁登陸授權(quán)的示例分析

發(fā)布時(shí)間:2021-09-01 09:50:57 來源:億速云 閱讀:135 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要為大家展示了“php版微信公眾平臺之微信網(wǎng)頁登陸授權(quán)的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“php版微信公眾平臺之微信網(wǎng)頁登陸授權(quán)的示例分析”這篇文章吧。

具體如下:

微信公眾平臺實(shí)現(xiàn)微信網(wǎng)頁登陸授權(quán)開發(fā)其實(shí)是非常的簡單了,因?yàn)楣俜降膮⒖汲绦蛄?下面小編就看了一站長根據(jù)官方參考做的一個(gè)網(wǎng)頁登陸授權(quán)例子,大家可看看.

文件1:index.php

//換成自己的接口信息
$appid = 'XXXXX';
header('location:https://open.weixin.qq.com/connect/oauth3/authorize?appid='.$appid.'&redirect_uri=127.0.0.1/oauth.php&response_type=code&scope=snsapi_userinfo&state=123&connect_redirect=1#wechat_redirect');
參數(shù)是否必須說明
appid公眾號的唯一標(biāo)識
redirect_uri授權(quán)后重定向的回調(diào)鏈接地址,請使用urlencode對鏈接進(jìn)行處理
response_type返回類型,請?zhí)顚慶ode
scope應(yīng)用授權(quán)作用域,snsapi_base(不彈出授權(quán)頁面,直接跳轉(zhuǎn),只能獲取用戶openid),snsapi_userinfo(彈出授權(quán)頁面,可通過openid拿到昵稱、性別、所在地。并且,即使在未關(guān)注的情況下,只要用戶授權(quán),也能獲取其信息)
state重定向后會帶上state參數(shù),開發(fā)者可以填寫a-zA-Z0-9的參數(shù)值
#wechat_redirect無論直接打開還是做頁面302重定向時(shí)候,必須帶此參數(shù)

文件二:oauth.php,代碼如下:

<?php
$code = $_GET['code'];
$state = $_GET['state'];
//換成自己的接口信息
$appid = 'XXXXX';
$appsecret = 'XXXXX';
if (emptyempty($code)) $this->error('授權(quán)失敗');
$token_url = 'https://api.weixin.qq.com/sns/oauth3/access_token?appid='.$appid.'&secret='.$appsecret.'&code='.$code.'&grant_type=authorization_code';
$token = json_decode(file_get_contents($token_url));
if (isset($token->errcode)) {
 echo '<h2>錯(cuò)誤:</h2>'.$token->errcode;
 echo '<br/><h3>錯(cuò)誤信息:</h3>'.$token->errmsg;
 exit;
}
$access_token_url = 'https://api.weixin.qq.com/sns/oauth3/refresh_token?appid='.$appid.'&grant_type=refresh_token&refresh_token='.$token->refresh_token;
//轉(zhuǎn)成對象
$access_token = json_decode(file_get_contents($access_token_url));
if (isset($access_token->errcode)) {
 echo '<h2>錯(cuò)誤:</h2>'.$access_token->errcode;
 echo '<br/><h3>錯(cuò)誤信息:</h3>'.$access_token->errmsg;
 exit;
}
$user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_token->access_token.'&openid='.$access_token->openid.'&lang=zh_CN'; //開源軟件:phpfensi.com
//轉(zhuǎn)成對象
$user_info = json_decode(file_get_contents($user_info_url));
if (isset($user_info->errcode)) {
 echo '<h2>錯(cuò)誤:</h2>'.$user_info->errcode;
 echo '<br/><h3>錯(cuò)誤信息:</h3>'.$user_info->errmsg;
 exit;
}
//打印用戶信息
echo '<pre>';
print_r($user_info);
echo '</pre>';
?>
參數(shù)描述
openid用戶的唯一標(biāo)識
nickname用戶昵稱
sex用戶的性別,值為1時(shí)是男性,值為2時(shí)是女性,值為0時(shí)是未知
province用戶個(gè)人資料填寫的省份
city普通用戶個(gè)人資料填寫的城市
country國家,如中國為CN
headimgurl用戶頭像,最后一個(gè)數(shù)值代表正方形頭像大小(有0、46、64、96、132數(shù)值可選,0代表640*640正方形頭像),用戶沒有頭像時(shí)該項(xiàng)為空.
privilege用戶特權(quán)信息,json數(shù)組,如微信沃卡用戶為(chinaunicom)
unionid只有在用戶將公眾號綁定到微信開放平臺帳號后,才會出現(xiàn)該字段。詳見:獲取用戶個(gè)人信息(UnionID機(jī)制)

以上是“php版微信公眾平臺之微信網(wǎng)頁登陸授權(quán)的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI