微信開發之微信網頁授權 完整示例

2021-08-15 19:14:01 字數 2231 閱讀 3839

二、總共有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的區別 而普...