官术网_书友最值得收藏!

1.1 項目介紹

1.1.1 項目背景介紹

新浪微博是一款為大眾提供娛樂、休閑、生活服務的信息分享和交流平臺,用戶可以通過網頁、WAP 頁面、手機客戶端、手機短信、彩信發布消息或上傳圖片。我們可以把新浪微博理解為“微型博客”或者“一句話博客”。用戶可以將看到的、聽到的、想到的事情寫成一句話,或發一張圖片,通過計算機或者手機隨時隨地分享給朋友,一起分享、討論;還可以關注朋友,即時看到朋友們發布的信息。

新浪微博由新浪公司于2009年正式推出。截至2016年3月,微博月活躍用戶2.61億,日活躍用戶1.2億,擁有龐大的用戶群,是國內最有影響力、最受矚目的微博運營商之一。

2010年初,新浪微博推出API開放平臺,通過它的開放接口,其他網站或者App紛紛推出“分享到新浪微博”功能,更加速了新浪微博的發展。圖1-1展示了百度和淘寶的分享功能。

圖1-1 百度分享和淘寶分享

新浪微博是中國移動互聯網的代表性產品之一,它涵蓋了大量的移動互聯網元素。通過對新浪微博的研究及模仿實現,可以獲得如下收獲。

● 對這些元素在實際產品中的應用有深入的了解和認識。

● 知道如何在一個真實的項目中運用相關技術點。

● 對大型項目的架構、開發及掌控有更全面的認識和理解。

本書借助新浪微博開放平臺,通過開發一個微博項目,讓大家從零開始了解開發一個大型項目的各個階段,具備一個大型項目系統開發的能力。

1.1.2 項目注冊

要想使用新浪公司的接口開發項目,首先要注冊一個新浪賬號成為新浪的用戶,然后登陸微博開放平臺(open.weibo.com),注冊和管理要使用新浪微博接口的項目。在新浪平臺注冊App,綁定項目的步驟具體如下。

(1)訪問新浪微博開放平臺,平臺的主界面如圖1-2所示。

圖1-2 新浪開放平臺主界面

(2)單擊主界面上的“登錄”按鈕,頁面上彈出登錄界面,如圖1-3所示。輸入新浪用戶名和密碼,即可登錄并成為它的開發者。

圖1-3 登錄界面

(3)登錄成功以后,單擊主頁面頂部菜單上的【微連接】→【移動應用】命令,進入微連接頁面,如圖1-4所示。

圖1-4 “微連接”頁面

(4)單擊“立即接入”按鈕,然后在系統彈出的提示框中單擊“繼續創建”按鈕,即可進入創建移動應用的頁面,具體如圖1-5所示。

(5)創建移動應用的頁面如圖1-6所示。輸入應用名稱,如我們的項目名稱“黑馬微博”。要注意,應用不能重名。然后在應用平臺上選擇“iPhone”,最后單擊“創建”按鈕進行創建。

圖1-5 彈出的提示框

圖1-6 創建移動應用的頁面

(6)創建完應用以后,頁面自動跳轉到【我的應用】→【應用信息】→【基本信息】頁面。在該頁面中可以看到開放平臺為應用生成的App Key和App Secret信息,如圖1-7所示。

圖1-7 生成的應用信息頁面

其中,App Key是應用程序在新浪網站上登記的身份證號,App Secret是用于識別應用程序的,App Key和App Secret共同組成一個App的唯一標識。App Key是不可更改的,但是如果App Secret被泄露,是可以更改的。這兩個信息是App可以訪問新浪開放接口的關鍵信息,非常重要,建議保存起來。

(7)在【我的應用】→【高級信息】菜單中,單擊【OAuth2.0授權設置】行尾的【編輯】,可添加授權回調頁信息,這是必填項目,如圖1-8所示。

圖1-8 授權設置頁面

(8)進入編輯頁面,填入網站信息以后,單擊“提交”按鈕就可以了,如圖1-9所示。

圖1-9 添加授權回調頁

至此,我們的項目已經在新浪微博開放平臺上登記完成,可以在項目中使用生成的信息進行用戶驗證、獲取數據等操作了。

1.1.3 接口文檔的獲取和查看

如果要開發微博應用,微博開發平臺開放了包括微博、用戶在內的二十余類接口,供我們實現豐富齊全的功能。首先,打開新浪開放平臺的首頁,單擊頁面上方的“文檔”,進入開發文檔頁面,如圖1-10所示。

圖1-10 開發文檔頁面

然后,單擊圖1-10中的【API文檔】,進入“微博API”頁面,如圖1-11所示。我們看到新浪微博將所有開放的接口文檔按照功能模塊進行分類。

圖1-11 微博接口分類

單擊某個功能模塊,會定位到該功能模塊下的接口列表。以圖1-11中的“微博接口”為例,它有兩個子分類,分別是讀取接口和寫入接口,每個子分類下又有若干接口,包括接口地址和描述,如圖1-12和圖1-13所示。

圖1-12 微博讀取接口

圖1-13 微博寫入接口

單擊接口地址,會跳轉到該接口的具體描述頁面。以圖1-12中的“獲取最新的公共微博”接口為例,它的部分描述如圖1-14和圖1-15所示。

圖1-14 最新公共微博的部分信息(1)

圖1-15 最新公共微博的部分信息(2)

上述頁面描述的具體內容包括以下要素。

(1)URL:訪問接口的URL地址。

(2)支持格式:支持的數據格式,如XML或者JSON。

(3)HTTP請求方式:如GET或者POST。

(4)是否需要登錄:是否需要用戶登錄才能訪問接口,新浪微博開放的接口都需要登錄。在“是否需要登錄”下方有一個“如何登錄授權”的鏈接,單擊該鏈接就會跳轉到如何進行登錄授權的說明頁面。

(5)訪問授權限制:微博開放接口限制每段時間只能請求一定的次數。限制的單位時間有每小時、每天;限制的維度有單授權用戶和單IP;部分特殊接口有單獨的請求次數限制。

(6)請求參數:發送請求要帶的參數,包括參數名稱、是否必選、參數類型和范圍,以及參數說明。從圖1-15可以看出,有一個必選參數 access_token,類型是字符串類型,并說明是OAuth授權后獲得。如果要查詢如何登錄授權,可以單擊圖1-14中“是否需要登錄下”中的“如何登錄授權”鏈接。

(7)注意事項:使用接口時的注意事項。

(8)調用樣例及調試工具:調用接口的樣例或者調試工具。

(9)返回結果:調用接口后返回的結果,以下是“獲取最新的公共微博”接口的部分返回結果,如圖1-16所示。

圖1-16 “返回結果”部分示例

(10)返回字段說明:對接口返回的字段進行詳細說明。以下是“獲取最新的公共微博”接口的返回字段,如圖1-17所示。

圖1-17 “返回字段說明”示例

(11)其他:其他事項。

(12)相關問題:相互關聯的其他問題。

1.1.4 項目功能介紹

新浪微博官方 App 包含的功能非常豐富。考慮到很多功能實現的方式類似,本書僅實現最常用的若干功能,希望大家能夠掌握其中的技巧和方法,舉一反三。下面是本書將要帶大家實現的功能。

1.用戶登錄

要調用新浪微博的開放接口,多數都需要獲取用戶身份認證。本書在項目中采用 OAuth2.0協議授權登錄的方式,在這種授權方式下,由新浪微博官方提供的接口負責用戶授權驗證,而本項目作為第三方 App 無法獲得用戶的用戶名或密碼等信息。授權成功后,新浪微博會返回一個令牌access_token,第三方App可以使用這個令牌從新浪微博的服務器獲取用戶的相關信息,以及獲取微博等。用戶登錄的過程如圖1-18所示。

圖1-18 用戶登錄過程

2.顯示原創微博

用戶登錄成功后,就可以查看關注的人發布的微博。這些微博信息都是從新浪微博的服務器中獲取的,所以與新浪微博的顯示數據是一致的。作為學習項目,本書微博項目的顯示界面模仿了新浪微博官方 App 的顯示界面和風格,可以顯示文字微博、單圖微博和多圖微博。顯示原創微博的界面如圖1-19所示。

圖1-19 顯示原創微博的界面

3.顯示轉發微博

用戶登錄成功以后,不僅可以顯示原創微博,還可以顯示轉發微博。轉發微博的顯示樣式與新浪微博官方App是一樣的。顯示轉發微博的界面如圖1-20所示。

圖1-20 顯示轉發微博的界面

4.發布微博

用戶登錄成功后,還可以通過本項目發布自己的原創微博,發布的微博被發送到新浪微博官方的服務器上,所以在新浪微博官方 App 上也可以看到。發布微博時,可以添加文字、表情和圖片等。發布微博的界面如圖1-21所示。

圖1-21 發布微博的界面

5.照片選擇和查看

在發布微博時,可以從本地相冊中選擇照片放在微博上。本項目提供了從本地相冊選擇照片和發布照片的功能。與新浪微博一致,最多可以從本地相冊中選擇9張圖片。從本地相冊選擇照片的界面如圖1-22所示。

圖1-22 照片選擇過程

6.數據緩存

用戶查看過的微博數據會緩存在本地,以提高下次查看微博的速度。為了控制本地數據的大小,不讓緩存數據無限制地膨脹,還會將早期的緩存數據定期清空,只保留近期的特定時間段的數據。

主站蜘蛛池模板: 玉林市| 河西区| 永仁县| 天等县| 吉木萨尔县| 黄骅市| 罗源县| 德惠市| 安多县| 正安县| 平江县| 绥宁县| 九龙城区| 志丹县| 利辛县| 察哈| 皮山县| 嵊泗县| 陵川县| 大理市| 灵丘县| 清远市| 乐至县| 武强县| 慈利县| 炉霍县| 黄浦区| 罗田县| 临潭县| 桃园市| 原平市| 万荣县| 武邑县| 牙克石市| 霍州市| 贵定县| 岳阳市| 上思县| 洞口县| 葫芦岛市| 丹棱县|