QQ授權登錄


QQ授權登陸過程總結:

第一步:獲取Authorization Code

請求地址:https://graph.qq.com/oauth2.0/authorize?

參數列表:

response_type true 授權類型,此值固定為“code”。
client_id true 申請QQ登錄成功后,分配給應用的appid。
redirect_uri true 成功授權后的回調地址,必須是注冊appid時填寫的主域名下的地址,建議設置為網站首頁或網站的用戶中心。注意需要將url進行URLEncode。
state true client端的狀態值。用於第三方應用防止CSRF攻擊,成功授權后回調時會原樣帶回。
scope opt 可填寫的值是API文檔中列出的接口,以及一些動作型的授權(目前僅有:do_like),如果要填寫多個接口名稱,請用逗號隔開。

例如:scope=get_user_info,list_album,upload_pic,do_like

不傳則默認請求對接口get_user_info進行授權。

display true 固定值 "mobile"

演示:https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=101181432&redirect_uri=http%3A%2F%2Fios.18idc.ml%2Ftest.html&state=test&display=mobile

注意:這里的redirect_uri不是隨便填的在注冊時直接填寫域名ex:baidu.com,用的時候http://www.baidu.com/**.**   后邊的***  是某個文件這個 你自己看着辦。

返回:這個你點這個鏈接授權后會有返回,注意記住其中的code的值;

第二步:通過Authorization Code獲取Access Token

地址:https://graph.qq.com/oauth2.0/token?

參數列表:

grant_type true 授權類型,在本步驟中,此值為“authorization_code”。
client_id true 申請QQ登錄成功后,分配給網站的appid。
client_secret true 申請QQ登錄成功后,分配給網站的appkey。
code true 上一步返回的authorization code。

 

如果用戶成功登錄並授權,則會跳轉到指定的回調地址,並在URL中帶上Authorization Code。

例如,回調地址為www.qq.com/my.php,則跳轉到:

http://www.qq.com/my.php?code=520DD95263C1CFEA087******

注意此code會在10分鍾內過期。

redirect_uri true 與上面一步中傳入的redirect_uri保持一致。

演示:https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=****&client_secret=********&code=*******&redirect_uri=http%3A%2F%2Fios.18idc.ml%2Ftest.html

返回:接下來的不會有演示了,這個牽扯到安全問題了,要想測試請自行申請,你們用的時候肯定不會成功code早過期了,請替換參數,返回的結果包含:access_token=******&expires_in=****&refresh_token=***

access_token 授權令牌,Access_Token。
expires_in 該access token的有效期,單位為秒。
refresh_token 在授權自動續期步驟中,獲取新的Access_Token時需要提供的參數。

第三步:根據access_token獲取OpenID

地址:https://graph.qq.com/oauth2.0/me?

參數列表:

access_token true 在Step1中獲取到的access token。

演示:這個不太好

第四步:獲取用戶信息

地址:https://graph.qq.com/user/get_user_info?

實例:

https://graph.qq.com/user/get_user_info?access_token=*************&oauth_consumer_key=12345&openid=****************

參數:access_token這個不說大家也知道,oauth_consumer_key這個其實是  appid 呵呵  是不是有點坑openID上一步獲取的。

完整文檔參考地址:請點擊

交流請加群:151180718


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM