2014-02-17 31 views
1

對不起,這可能是一些描述的重新發布,但是我找不到給我我需要的答案的問題。聊天服務器隨時可以接收?

我在Python中編寫了一個基本的聊天服務器,我可以讓客戶端完美地交互,但是,客戶端只會在發送一些內容後纔會接收數據。

我需要客戶端能夠在任何時候接收數據。

有沒有人有一些代碼的例子,我可以看看如何做到這一點,或者只是一個措辭的解釋如何做到這一點?

+0

嗨!我想你在談論投票嗎?根據您的需要,您可以使用一些JS來輪詢每秒或更短的時間。另一個需要研究的就是websocket。這裏有一些討論:關於Flask的http://flask.pocoo.org/mailinglist/archive/2011/12/30/websockets/,但如果你快速搜索「python websockets」,你將能夠收集更多信息。 –

+0

我會用輪詢的問題是我使用的是Windows系統。據我所知,Windows不能很好地與「選擇」模塊 – QuarterGeekster

+0

這聽起來有點類似[這個問題](http://stackoverflow.com/questions/21816533/asyncio-project-what-am-i-失蹤)。也許我的答案也會幫助你。 – poke

回答

1

這是一個很長的故事。

您可以先看看Python的asynchat。接下來,你可以考慮看看Twisted

+0

我使用python 3.3.3,所以Twisted將不起作用,因爲它只適用於2.7。你有任何使用asynchat的例子嗎? – QuarterGeekster

+0

@QuarterGeekster在asynchat的頁面上有一個例子(這不是一個聊天,但是一個HTTP處理程序,但它很清楚)。谷歌也給了我這個聊天示例:http://www.grantjenks.com/wiki/random/python_asynchat_chat_example – kirelagin