IOS開發--第三階段--新浪微博(1)文檔,ios第三階段
0https://itunes.apple.com/cn/app/you-dao-ci-dian/id491854842?mt=12 id491854842這個也叫做Apple ID區別於在AppStore下載使用的apple id(下載使用的帳號)
註冊新浪郵箱
註冊新浪微博
開放平台成為開發人員
註冊帳號
建立應用 行動裝置 App 填寫開發人員資訊
建立新應用 填寫基本資料 成功後顯示基本資料
記錄:
App Key:3744355969
App Secret:f4cd173c39d67d3f3fef43d5c63fe9c0
進階資訊
OAuth2.0 授權設定
授權回調頁 當使用者授權你的應用後,開放平台會回調你填寫的這個地址
取消授權回調頁 當使用者在我的應用程式管理頁中取消對你的應用授權時,開放平台會回調該地址
http://www.zhiyou100.com
2、OAuth2.0授權流程
學生(第三方應用)想要請假外出,需要寫個請假條(載入授權介面),找班主任簽字(同意授權),授課老師簽字(認證碼),學校蓋章(擷取access token)
流程圖:
Client指第三方應用,Resource Owner指使用者,Authorization Server是新浪的授權伺服器,Resource Server是資原始伺服器。
授權認證的目的就是通過一系列的流程 APP可以訪問資原始伺服器上的使用者的資訊
新浪有OAuth機制
APP要訪問資原始伺服器上的資源0
A:APP向使用者發出授權請求(當使用者點擊了分享,提供一個介面讓使用者登入並授權)
B:使用者授權給APP (使用者登入並授權 拿到驗證碼)
C:APP向授權伺服器請求 Access Token (APP使用驗證碼請求 Access Token)
D:授權伺服器返回Access Token給APP (授權伺服器返回 Access Token)
E:APP提交Access Token給資原始伺服器 (APP使用 Access Token 訪問資原始伺服器)
資原始伺服器提供受保護的資訊給APP (你的所有資訊都在資原始伺服器 資原始伺服器驗證存取權杖 提供資訊給APP)
代碼實現流程:
建立webView 設定代理 實現協議方法
首先訪問授權介面 Oauth2/authorize介面
https://api.weibo.com/oauth2/authorize?client_id=1514930435&redirect_uri=http://www.zhiyou100.com&display=mobile
構建請求
webView載入
使用者登入
在協議方法將要開始載入一個請求時
返回一個授權串連 點擊授權
授權伺服器返回一個串連 串連中包含(redirect_uri+code)
請求授權完成後執行shouldStartLoadWithRequest判斷是否返回code
根據code構建一次請求
請求結束方法中擷取access token
OAuth
OAuth協議為使用者資源的授權提供了一個安全的、開放而又簡易的標準。與以往的授權方式不同之處是OAUTH的授權不會使第三方觸及到使用者的帳號資訊(如使用者名稱與密碼),即第三方無需使用使用者的使用者名稱與密碼就可以申請獲得該使用者資源的授權,因此OAuth是安全的
例如:帥APP 需要訪問 帥使用者 的資源 新浪