天天看點

QQ互聯登入

項目需要,做一個QQ互聯第三方登入

1.在QQ互聯官網(http://connect.qq.com/)申請,根據項目需要,申請相應的接入,我們公司項目是網站接入的,是以選擇網站接入。

2.在他們官網點選建立應用,輸入相應的資訊,注意的是“網站位址”和“回調位址”這一欄必須是外網有域名的,不然驗證不通過。參考:http://wiki.connect.qq.com/%E7%BD%91%E7%AB%99%E6%8E%A5%E5%85%A5%E6%B5%81%E7%A8%8B

3.完成上面的步驟就可以在他們上面下載下傳QQ登入的按鈕圖案。把按鈕放在你們的相應登入頁面,點選事件什麼的就不詳細說了。

4.接下來就是網站的授權和如何擷取QQ使用者的資訊。

4.1 擷取Authorization Code

     向這個位址發送請求,參數換成你自己的,參數可以從管理中心--你申請接入的項目可以找到: https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=[YOUR_APPID]&redirect_uri=[YOUR_REDIRECT_URI]&scope=[THE_SCOPE]

     授權成功之後會跳轉到你第二部中設定的回調位址。

4.2你可以在回調位址頁面加載的時候觸發一個方法來通過Authorization Code擷取Access Token。

 https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=[YOUR_APP_ID]&client_secret=[YOUR_APP_Key]&code=[The_AUTHORIZATION_CODE]&state=[The_CLIENT_STATE]&redirect_uri=[YOUR_REDIRECT_URI],向這個位址發送請求。即可擷取到Access Token:

特别提示:

擷取到的access token具有3個月有效期,使用者再次登入時自動重新整理。

4.3使用Access Token來擷取使用者的OpenID

     在上一步擷取的token 可以用來向這個位址發送請求https://graph.qq.com/oauth2.0/me?access_token=YOUR_ACCESS_TOKEN。會擷取openId。

4.4使用Access Token以及OpenID來通路和修改使用者資料

    Access Token以及OpenID向https://graph.qq.com/user/get_user_info?access_token=YOUR_ACCESS_TOKEN&oauth_consumer_key=YOUR_APP_ID&openid=YOUR_OPENID發送請求就可以根據你的紅色的部分請求來進行相應的操作。紅色部分的api請參考:http://wiki.connect.qq.com/api%E5%88%97%E8%A1%A8

最後會擷取得到傳回的來QQ使用者資訊。你就可以進行你的業務邏輯操作了。

End