snsapi_base只能獲取access_token和openID,流程走完即終止
snsapi_userinfo可以獲取更詳細的用戶資料,比如頭像、昵稱、性別等
一,
當 scope=snsapi_userinfo時;
參考微信開發文檔:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
1,用全局access_token 和openid 獲取用戶個人信息,
$url ="https://api.weixin.qq.com/cgi-bin/user/info?access_token={$access_token}&openid={$openid}&lang=zh_CN"
(用戶已關注該公眾號) 信息如下:
(用戶未關注該公眾號) 信息如下:
相關參數如下:
二,
當 scope=snsapi_base時;
1、第一步,獲取code,
https://open.weixin.qq.com/connect/oauth2/authorize?appid='.APPID.'&redirect_uri='.urldecode(URL).'login.php&response_type=code&scope=snsapi_base&state=start#wechat_redirect
2、第二步,獲取openID, 網頁授權access_token(注意:網頁授權access_token 與 普通access_token的區別)
https://api.weixin.qq.com/sns/oauth2/access_token?appid='.APPID.'&secret='.APPSECRET.'&code='.CODE.'&grant_type=authorization_code
3、第三步,獲取普通access_token,有效期7200秒
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$secret
4、第四步,結合openID和普通access_token獲取用戶詳細信息,https://api.weixin.qq.com/cgi-bin/user/info?access_token='.$access_token.'&openid='.$openId.'&lang=zh_CN