當用戶點擊應用程式跳到我們設定的URL時,其實並沒有帶上用戶的任何信息,為了獲取用戶信息,我們需要藉助微信提供的OAuth2.0接口。
取得使用者資訊分兩步驟:
建構URL取得code
根據code取得成員資訊
一、建構URL取得code
企業如果需要員工在跳到企業網頁時帶上員工的身份訊息,需建構如下的連結:
# https://open.weixin.qq.com/connect/oauth2/authorize?appid=CORPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
參數說明
參數 |
必須 |
說明 |
#appid |
是 |
企業的CorpID |
redirect_uri |
是 |
授權後重定向的回呼連結位址,請使用urlencode對連結進行處理 |
response_type |
是 |
傳回類型,此時固定為:code |
scope | ##是 | 套用授權作用域,此時固定為:snsapi_base |
state | #否 | 已重新導向後會帶著state參數,企業可以填寫a-zA-Z0-9的參數值,長度不可超過128個位元組 |
##wechat_redirect | 是 | 微信終端使用此參數判斷是否需要帶上身分資訊 |
員工點擊後,頁面會跳到redirect_uri?code=CODE&state=STATE,企業可依code參數取得員工的userid。
appid
如下圖所示取得
scope
可使用snsapi_base或snsapi_userinfo,snsapi_userinfoinfo能夠取得到更多信息,但需用戶明確授權
修改URL
假設我們要訪問的頁面是http://abc.com/homepage.html,CORPID為wx7ce4xxxxxxxa4dd1,最終我們構造的URL為
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx7ce4xxxxxxxa4dd1&redirect_uri=http%3a%2f%2fabc.com%2fhomepage.html&response_http%3a%2f%2fabc.com%2fhomepage.html&response_http%3a%2f%2fabc.com%2fhomepage.html&response_http%3a%2f%2fabc.com%2fhomepage.html&response_% #wechat_redirect
最後把應用程式的主頁URL設定為該URL即可,當使用者點擊應用程式時最終跳轉的頁面為http://abc.com/homepage.html?code=xxxx&state=1
注意:應用程式需設定可信任域名,如果最終跳轉頁面的域名與可信任域名不符將無法跳轉
二、根據code取得成員資訊
根據code取得成員資訊
Https請求方式:GET
|
|
https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE |
參數說明 |
|
|
參數 | 必須 | #說明 |
#access_token
##是
#access_token
code
是######透過成員授權取得到的code,每次成員授權帶上的code將不一樣, code只能使用一次,10分鐘未使用自動過期######################權限說明############ 跳轉的網域名稱須完全匹配管理群組中任一應用的可信任網域名稱。 ############傳回結果############ a)企業成員授權時傳回範例如下:###
{
"UserId":"USERID",
"DeviceId":"DEVICEID"
}
登入後複製
###
以上是微信企業號開發獲取用戶資訊的介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!