如果開(kāi)發(fā)者需要從第三方獲取數(shù)據(jù)時(shí)瑰妄,就需要獲取第三方的OAuth授權(quán),這樣可以保證數(shù)據(jù)的安全乎赴,使得第三方軟件既可以訪問(wèn)用戶數(shù)據(jù),又不知道用戶密碼潮尝。
應(yīng)用程序進(jìn)入流程:
如何獲取OAuth授權(quán)榕吼?
不是任何應(yīng)用都能OAuth授權(quán)的,以新浪的為例:如果你需要訪問(wèn)新浪微博的用戶數(shù)據(jù)勉失,首先你必須成為新浪的開(kāi)發(fā)者羹蚣,申請(qǐng)微博賬號(hào),在新浪開(kāi)發(fā)者網(wǎng)站創(chuàng)建的應(yīng)用才能OAuth授權(quán)應(yīng)用的名稱(chēng)的含義:如果審核通過(guò)乱凿,會(huì)顯示來(lái)自XX應(yīng)用顽素。
應(yīng)用地址的含義:點(diǎn)擊來(lái)自某某應(yīng)用,會(huì)跳轉(zhuǎn)的鏈接
App Key:應(yīng)用的唯一標(biāo)識(shí)
OAuth授權(quán)有哪些步驟
- 通過(guò)網(wǎng)頁(yè)獲取未授權(quán)的Request Token(展示登錄界面)
- 獲取用戶授權(quán)的Request Token(點(diǎn)擊授權(quán))
- 用授權(quán)的Request Token換取Access Token
(Access Token:等到它就相當(dāng)于得到一個(gè)"令牌",通過(guò)此令牌請(qǐng)求徒蟆,就可以去擁有資源的網(wǎng)站抓去任意有權(quán)限的才可以被抓取的數(shù)據(jù))
查看開(kāi)發(fā)文檔:
- url
- 發(fā)送什么類(lèi)型的請(qǐng)求
- 可以請(qǐng)求的參數(shù):請(qǐng)求的參數(shù)拼接到url后面才是完整的url
拼接url:url + 堡距?+ 必選參數(shù)
例如:
https://api.weibo.com/oauth2/authorize?client_id=1104550576&redirect_uri=http://www.baidu.com - 用瀏覽器打開(kāi)上面的地址就會(huì)得到一個(gè)登錄界面
- 需要登錄自己的微博帳號(hào)配深,如果用戶第一次登錄庵芭,登錄成功后會(huì)先進(jìn)入到授權(quán)頁(yè)面
-
點(diǎn)擊授權(quán)德迹,回調(diào)成功進(jìn)入回調(diào)界面寺枉,并返回code參數(shù)姥闪,即Request Token
- 用得到的code(Request Token)換取需要的Access Token(獲取授權(quán))
注意:什么時(shí)候處理授權(quán)?應(yīng)該在程序啟動(dòng)時(shí)進(jìn)行授權(quán)
access_token:表示哪個(gè)用戶在哪個(gè)應(yīng)用下的標(biāo)識(shí)符槐脏,獲取access_token就可以訪問(wèn)新浪微博的數(shù)據(jù)