第三方

使用的scope是snsapi_base方式,只能獲得用戶的openid。

微信OAuth2.0授權(quán)登錄讓微信用戶使用微信身份安全登錄第三方應(yīng)用或網(wǎng)站,在微信用戶授權(quán)登錄已接入微信OAuth2.0的第三方應(yīng)用后,第三方可以獲取到用戶的接口調(diào)用憑證(access_token),通過access_token可以進行微信開放平臺授權(quán)關(guān)系接口調(diào)用,從而可實現(xiàn)獲取微信用戶基本開放信息和幫助用戶實現(xiàn)基礎(chǔ)開放功能等。

authorization_code

1. 第三方發(fā)起微信授權(quán)登錄請求,微信用戶允許授權(quán)第三方應(yīng)用后,微信會拉起應(yīng)用或重定向到第三方網(wǎng)站,并且?guī)鲜跈?quán)臨時票據(jù)code參數(shù);

2. 通過code參數(shù)加上AppID和AppSecret等,通過API換取access_token;

3. 通過access_token進行接口調(diào)用,獲取用戶基本數(shù)據(jù)資源或幫助用戶實現(xiàn)基本操作。



第一步,第三方應(yīng)用通過新浪微博事先公開的自定義URL Scheme來調(diào)用新浪微博app,將第三方應(yīng)用的appkey,回調(diào)url scheme等相關(guān)參數(shù)傳過去;

第二步,新浪微博app將自身管理的已登陸的賬號信息展示給用戶;

第三步,用戶選擇指定賬戶后由新浪微博app負責(zé)和新浪后端服務(wù)器進行驗證授權(quán);

第四步,新浪微博app通過之前傳過去的回調(diào)url scheme來調(diào)用第三方應(yīng)用,將獲得的授權(quán)token傳給第三方應(yīng)用

第五步,第三方應(yīng)用獲得授權(quán)token,使用token進行各項已授權(quán)的操作。

AppKey:????????????????第三方應(yīng)用申請的key,用于身份鑒證,顯示來源

AppRedirectURL:應(yīng)用回調(diào)頁。認證時所用。

點擊工程target,進入info選項,找到URL Types欄目,點擊“+”按鈕添加url type。



scope是OAuth2.0授權(quán)機制中authorize接口的一個參數(shù)。

scope權(quán)限接口


開發(fā)者可以通過兩種方式計算access_token的實效時間:

* 1、用戶授權(quán)時,oauth2/access_token接口返回的expires_in值就是access_token的生命周期;

* 2、從上述對應(yīng)表中,找到應(yīng)用所對應(yīng)的授權(quán)有效期,過期時間 = 用戶授權(quán)時間 + 授權(quán)有效期;

第三方開發(fā)應(yīng)用需要具備一定的健壯性,調(diào)用接口時判斷接口的返回值,如果用戶的access_token失效,需要引導(dǎo)用戶重新授權(quán)。

失效原因有以下幾個:

* 1、用戶取消了對應(yīng)用的授權(quán);

* 2、access_token自然過期;

* 3、用戶修改了密碼,凍結(jié)了對應(yīng)用的授權(quán);

* 4、微博發(fā)現(xiàn)用戶帳號被盜,凍結(jié)了用戶對應(yīng)用的授權(quán);

授權(quán)有效期的延續(xù)

授權(quán)有效期內(nèi)重新授權(quán)

如果用戶在授權(quán)有效期內(nèi)重新打開授權(quán)頁授權(quán)(如果此時用戶有微博登錄狀態(tài),這個頁面將一閃而過),那么微博會為開發(fā)者自動延長access_token的生命周期,請開發(fā)者維護新授權(quán)后得access_token值。

通過Refresh Token刷新授權(quán)有效期

除此之外,我們也提供了通過 Refresh Token 刷新的方式來延續(xù)授權(quán)有效期,但需要注意的是:只有使用微博官方移動SDK的移動應(yīng)用,才可以從SDK的方法中獲取到 Refresh Token。

Refresh Token 是 Access Grants 的一種,在獲取 Access Token 時,認證服務(wù)器將返回相應(yīng)的 Refresh Token,如果 Access Token 過期,就可以用 Refresh Token 去刷新。

Refresh Token 也是有有效期的,Refresh Token 的有效期目前為30天,在有效期內(nèi)隨時可以刷新。

通過 Refresh Token 刷新得到的新的 Access Token ,其有效期等同于原來的有效期,即原來 Access Token 的有效期是7天,則新獲得的也是7天。

簡單來說就是對于使用了微博移動SDK的移動應(yīng)用,授權(quán)(Access Token)7天有效,30天可續(xù),每續(xù)一次增加7天有效。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 標(biāo)簽(空格分隔): iOS 我的計劃1.使用微信SDK實現(xiàn)微信第三方登錄2.使用友盟實現(xiàn)第三方登錄3.使用open...
    iOS_愛OS閱讀 5,931評論 1 9
  • 注意:代碼自己動手寫,不要復(fù)制! GitHub 一、接入微信第三方登錄準(zhǔn)備工作。 移動應(yīng)用微信登錄是基于OAuth...
    大沖哥閱讀 15,394評論 0 7
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,075評論 4 61
  • 希望此篇文章可以對那些沒做過微信登錄的朋友提供一些幫助。接下來我會根據(jù)一些步驟依次講解微信登錄。 1.注冊公司ap...
    路上的Acmen閱讀 2,330評論 1 7
  • 今天有活干就覺得充實,整天的狀態(tài)都不同。哈哈聽了姑姑的話沒喝牛奶,下午也沒拉肚子。希望是找到了問題的癥結(jié),不要再拉...
    敏捷的魚兒閱讀 362評論 2 1

友情鏈接更多精彩內(nèi)容