1
我正在嘗試編寫我的第一個龍捲風應用程序。
龍捲風示例示例顯示下面的代碼但是,一旦「MainHandler」函數返回,此服務器的客戶端&之間的連接將會丟失。調用Tornado服務器時保持ajax調用活着
我希望服務器能夠在數據可用時持續推送數據。
如何保持這個管道打開?
在客戶端,我正在考慮做一個ajax調用。這會工作嗎?
我認爲一旦收到數據,ajax通話就結束了。
Facebook並說,客戶保持與服務器開一個線程使用龍捲風,所以我知道這是可以做到的,我想我在這裏的一些簡單的概念掙扎..
import tornado.ioloop
import tornado.web
import time
class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("What happens after this call ?")
# while(True): time.sleep(5) <push more data># This would be ugly.. plus blocking(correct ?)
application = tornado.web.Application([
(r"/", MainHandler),
])
if __name__ == "__main__":
application.listen(8888)
tornado.ioloop.IOLoop.instance().start()
是什麼在我的理解中失蹤?
謝謝。這幫助了很大的時間。我在文檔中找到聊天演示,並查看其中的長輪詢。 Websockets看起來很棒。 – PlanetUnknown 2011-05-05 21:12:42