2011-12-11 60 views
1

我對套接字一無所知。我想知道的是插座是如何工作的。發送數據到iPhone上的插座

1)防火牆通常阻塞端口。如果我請求一個套接字並且它位於一個阻塞的端口後面,那麼發送或接收的任何內容都會被攔截並銷燬嗎?這是一個問題嗎?

2)在服務器端,你如何保持連接的活動狀態來發回數據,就像我正在構建一個聊天應用程序一樣,可以通過套接字啓動連接並保持活動狀態並使服務器基本上通過流推送新數據。而不是應用程序必須經常查詢。 3)如果應用程序進入後臺,蘋果表示只要不需要它(如果它是voip),它們就會保持套接字不變。這是否意味着我仍然可以將數據發送到應用程序並進行處理?如果我的應用程序已註冊位置更新並在後臺執行,套接字是否會保持打開狀態?

是否有任何服務器語言使它變得簡單?我目前使用python和Django作爲簡單的http服務器。是否有任何教程設置可以保持連接活着的服務器。我真的不太瞭解這個,所以我所要求的可能沒有任何意義,但某些方向將不勝感激。

回答

1

1)我還沒有發現防火牆的問題。

2)我用一個扭曲的服務器沿着我的web服務器來實現一個事件驅動套接字服務器,它工作的很好。

3)只要您在後臺執行並調用委託方法來處理流事件,套接字將保持打開狀態。

有一個很好的教程在這裏:

http://www.raywenderlich.com/3932/how-to-create-a-socket-based-iphone-app-and-server

是越過扭曲的框架,以及如何創建與socket聊天應用。我發現這非常有幫助。

+0

爲什麼不提供鏈接與您的答案?我相信有人會喜歡這個。 – Legolas