二、總共有5個步驟:
1:使用者同意授權,獲取code
2:通過code換取網頁授權access_token
3:重新整理access_token(如果需要)
4:拉取使用者資訊(需scope為 snsapi_userinfo)
5附:檢驗授權憑證(access_token)是否有效
三、每乙個步驟的實現。
1:使用者同意授權,獲取code
[php]
view plain
copy
/*** @explain
* 獲取code,用於獲取openid和access_token
* @remark
* code只能使用一次,當獲取到之後code失效,再次獲取需要重新進入
**/public
function
getcode()
else
} 2:通過code換取網頁授權access_token
[php]
view plain
copy
/*** @explain
* 用於獲取access_token,返回的$access_token_array中也包含有使用者的openid資訊。
**/public
function
getopenid() 3
:重新整理access_token(如果需要)
這一步直接略過。
4:拉取使用者資訊(需scope為 snsapi_userinfo)
[php]
view plain
copy
/*** @explain
* 獲取到使用者的openid之後可以判斷使用者是否有資料,可以直接跳過獲取access_token,也可以繼續獲取access_token
**/public
function
getuserinfo()
至此四個步驟全部完成。
四、完整**。實際專案使用tp3.2.3。
[php]
view plain
copy
<?php
namespace wechat\controller;
usethink\controller;
class
wxbasecontroller
extends
controller
session('openid'
, $userinfo
['openid'
]);
} }
} /**
* @explain
* 獲取code,用於獲取openid和access_token
* @remark
* code只能使用一次,當獲取到之後code失效,再次獲取需要重新進入
**/public
function
getcode()
else
} /*** @explain
* 用於獲取使用者openid
**/public
function
getopenid()
/*** @explain
* @return
* @remark
* 獲取到使用者的openid之後可以判斷使用者是否有資料,可以直接跳過獲取access_token,也可以繼續獲取access_token
* access_token每日獲取次數是有限制的,access_token有時間限制,可以儲存到資料庫7200s. 7200s後access_token失效
**/public
function
getuserinfo()
/*** @explain
* 傳送http請求,並返回資料
微信開發之微信網頁授權 完整示例
二 總共有5個步驟 1 使用者同意授權,獲取code 2 通過code換取網頁授權access token 3 重新整理access token 如果需要 4 拉取使用者資訊 需scope為 snsapi userinfo 5 附 檢驗授權憑證 access token 是否有效 三 每乙個步驟的實...
微信開發之微信網頁授 完整示例
二 總共有5個步驟 1 使用者同意授權,獲取code 2 通過code換取網頁授權access token 3 重新整理access token 如果需要 4 拉取使用者資訊 需scope為 snsapi userinfo 5 附 檢驗授權憑證 access token 是否有效 三 每乙個步驟的實...
微信公眾平台開發 微信網頁授權
條件 關於網頁授權的兩種scope的區別說明 以snsapi userinfo為scope發起的網頁授權,彈出授權頁面,可通過openid拿到暱稱 性別 所在地。並且,即使在未關注的情況下,只要使用者授權,也能獲取其資訊。關於網頁授權access token和普通access token的區別 而普...