QQ登入整合外掛簡介
網際網路應用越來越多,通常每一個應用都會要求使用者註冊登入,粗略估記一下,QQ,微博,微信,銀行帳號、郵箱,招聘網站賬戶,淘寶帳號,支付寶帳號,公司OA帳號....粗略算一下,十幾個吧,如果每一個都記住,也挺難的,尤其是那些不常用的,可能幾天登入一次,要求每個使用者去註冊,填一大堆資料也不合適,如果有一款大家都有的帳號,這些帳戶包含一些通用的使用者資料,並且開放出來,各應用能都獲取,使用者只需要記住一個帳戶就OK了,對使用者來講,卻是省去了一大堆的麻煩。
騰訊的QQ互聯正好解決這個問題。作為一個資深網民,大家幾乎沒有人沒有QQ號,上班的第一件事就是登入QQ。
為了讓各平臺的開發者更加方便和快速的接入QQ互聯開放平臺,社群論壇類站點的開發者無需進行程式碼編寫,即可進行QQ登入的接入。這樣使用者登入QQ後就不用再登入應用了,直接從QQ互聯中獲取這個登入QQ的使用者資料,利用騰訊開放出來的介面,釋出說說、微博、新增關注既方便開發者又方便終端使用者。
本篇結合實際示例來講 一個web應用怎麼使用QQ互聯。
看效果:
1,申請appid
使用QQ互聯需要騰訊稽核,稽核挺快的,官方給的答覆是一天內完成稽核,實際從提交稽核到批准,不到兩個小時,
2,引用js sdk
<script type="text/javascript"
src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js" data-appid="APPID" data-redirecturi="REDIRECTURI" charset="utf-8"></script>
3,放置QQ登入按鈕
<span id="qqLoginBtn" class="bonlog">一鍵登入</span> <script type="text/javascript"> QC.Login({ //btnId:插入按鈕的節點id,必選 btnId: "qqLoginBtn", //使用者需要確認的scope授權項,可選,預設all scope: "all", //按鈕尺寸,可用值[A_XL| A_L| A_M| A_S| B_M| B_S| C_S],可選,預設B_S size: "C_L" }, function (reqData, opts) {//登入成功 }, function (opts) {//登出成功 } ); </script>
4,回撥裡新增登入成功後的業務
關於登入後的使用者資訊在 reqData物件裡,具體的要根據使用者點選的授權來定
我選擇的是全部授權資訊:
{ "ret": 0, "msg": "", "is_lost": 0, "nickname": "浪花一朵朵", "gender": "男", "province": "浙江", "city": "寧波", "year": "1985", "figureurl": "http://qzapp.qlogo.cn/qzapp/222222/8EAF428CB2F15DEE786A8CA7898D5DCF/30", "figureurl_1": "http://qzapp.qlogo.cn/qzapp/222222/8EAF428CB2F15DEE786A8CA7898D5DCF/50", "figureurl_2": "http://qzapp.qlogo.cn/qzapp/222222/8EAF428CB2F15DEE786A8CA7898D5DCF/100", "figureurl_qq_1": "http://q.qlogo.cn/qqapp/222222/8EAF428CB2F15DEE786A8CA7898D5DCF/40", "figureurl_qq_2": "http://q.qlogo.cn/qqapp/222222/8EAF428CB2F15DEE786A8CA7898D5DCF/100", "is_yellow_vip": "0", "vip": "0", "yellow_vip_level": "0", "level": "0", "is_yellow_year_vip": "0" }
大概說一下包含哪些,暱稱,出生年份,所有省份,市,影象,是不是會員等資訊,
獲取當前登入使用者的Access Token以及OpenID
Token是和QQ號一一對應的,騰訊不提供QQ號,使用者可以把token儲存到自己的資料庫表中。
QC.Login.getMe(function(openId, accessToken){}):void
5,利用開放api發表說說,分享等
具體的可以通過介面寫一些空間說說,評論,分享,發微博,付款等,