2012-04-02 68 views
2

我不確定這個問題在這裏是否合適,但我希望我能得到一些幫助。我期望做的基本上是使基於服務器的iPhone應用程序。我有一臺準備好使用的Ubuntu服務器。我正在考慮製作一個Web服務,然後我的應用程序可以使用它,但我幾乎沒有這方面的經驗,所以我正在尋找一些幫助,以便指出正確的方向,使用什麼語言編寫Web服務等等。它不是必需的Web服務,而是依賴於服務器的iPhone應用程序。iPhone服務器客戶端應用程序

這個小任務只是爲了學習經驗。

回答

5

可能PHP是你用來編寫web服務的東西。基於REST的服務是最流行的,但它可以像傳遞參數的POST表單一樣簡單。 PHP腳本(不管你以哪種方式編寫它)會將這些參數和任何其他需要的信息傳遞給執行SQL查詢(最好使用存儲過程)或使用其他服務器資源的服務器方法。那麼這些數據將通過webservice輸出爲XML或JSON(我個人更喜歡JSON)。

退房Ray Wenderlich's教程只是這種事情:

當談到時間來處理在iOS上的要求,我個人的選擇是AFNetworking。它使用塊代替委託方法,並且速度非常快。如果需要,我可以用例子來勾住你。

+0

除了Web服務之外,您還有其他基於服務器的iPhone應用程序的例子嗎? – user1163392 2012-04-02 12:05:00

+0

一個Web服務實際上只不過是一個服務器端接口,它提出請求並輸出響應。它可能是一個表單POST,一個完整的REST服務或者介於兩者之間的某個地方。 – 2012-04-02 12:19:13

1

好的,首先你需要學習如何在PHP中編寫Web服務。這將以XML格式返回您的回覆。我個人更喜歡.PLIST格式,因爲它更容易在iOS上解析。

一旦您的Web服務啓動並運行。您需要使用NSURLConnection和NSURLRequest與您的Web服務進行通信。正確實施NSURLConnection委託方法,您可以下載XML響應,也可以將其保存在文檔目錄中的文件中。

然後一旦完成下載,就開始使用NSXMLParser解析該響應。實現委託,而不是,你可以創建你的數據結構,你可以自由地操作它,並將解析結果存儲在它們中,並相應地填充你的View。

+1

如果他實現了web服務,他可以以任何他想要的格式返回響應。無論如何,JSON在iOS上的解析速度要快於XML。 – jmstone617 2012-04-02 12:14:39

+0

+1返回JSON – 2012-04-02 13:11:08

+0

真的,我個人使用.PLIST,所以我不必做任何形式的解析。只需將它保存爲一個文件並將其讀回到NSDictionary或NSArray中即可。歡呼 – jAmi 2012-04-02 13:25:10