2011-08-12 43 views
3

我想開發一個應用程序與網絡服務器通信。 我有一個網絡服務器,我想在iOS設備上加載數據。iPhone/iPad(iOS)到MySQL服務器 - DataHandling

我的目標是:
- 我啓動應用程序
- 登錄到Web服務器(或者,如果我已經連接到之前的網絡服務器脫機使用)
- 處理我的數據,讀我的新聞等等,變化任何數據(在線和離線)
- 檢查與應用程序工作時,如果任何數據的改變,「snyc」或「上傳」更改到Web服務器

*The Data's are only text, no images, no files at the moment* 

現在的問題是,這是最好的我的應用程序的方式?

我應該使用哪一個API用於我的網絡服務器與iOS設備進行通信?
- 我已經閱讀了很多XML和JSON,可能JSON會是最快和最容易在Web服務器和iOS上使用它的。
如何離線使用應用程序並對其進行解析?如果有什麼變化,我如何同步它?
我該如何解決登錄問題,如何進行身份驗證?我認爲這是一個非常重要的安全問題。

因爲有大量的數據,所以僅使用Request工作並不會有效。

感謝您的任何recommandations,
brush51

回答

2

進行通信,可以考慮使用一個庫像ASIHTTPRequest

什麼是ASIHTTPRequest?

ASIHTTPRequest是圍繞CFNetwork API的易於使用的包裝器 ,它使與網絡服務器通信的一些更繁瑣的方面更容易一些。它是用Objective-C 編寫的,適用於Mac OS X和iPhone應用程序。

它適合執行基本HTTP請求並與基於REST的服務(GET/POST/PUT/DELETE)進行交互。 ASIFormDataRequest子類包含的 可以使用multipart/form-data很容易地提交POST數據和 文件。

數據格式(JSON,XML)真的取決於您。我喜歡JSON,目前肯定是新潮。

就身份驗證而言,請考慮使用https://請求來確保通信安全。通過https發送用戶名/密碼,然後使用身份驗證令牌分配Cookie。在隨後的請求中,身份驗證令牌將在cookie中自動發送,如果您使用的是https://,則會進行加密。你的API需要確保cookie中的認證令牌是合法的,然後進行處理。

這是我過去使用的一種安全方法,它運行良好。你可以閱讀很多關於如何確保溝通的優秀文章。

看看Best Practices for securing a REST API/web service

也看到我使用ASIHTTPRequest How to Create Totally Secure Cookies

+1

,很容易使用,它的巨大。謝謝你的建議! – brush51