我正在尝试用javascript编写一些简单的聊天客户端,但我需要一种实时更新消息的方法。虽然我可以使用xmlhttprequest函数,但我相信它会占用服务器上的TCP / IP端口,可能更重要的是,我目前的托管包不允许这样做。它似乎不是一个理想的解决方案,因为它似乎有点hacky不断有一个开放的连接,如果我只是听端口并获取数据,它会容易得多。我在互联网上看到了很多关于彗星和连续民意调查的内容,这些内容并不令人满意,很多人都认为javascript并不适合我,我同意这一点。现在我实际上已经学到了更多关于互联网是如何工作的,但似乎可行。我不需要担心到目前为止发送消息;我可以解决这个问题,但有没有办法在javascript上侦听某个端口?
答案 0 :(得分:9)
在Javascript中无法收听端口。
可是:
XmlHTTPRequest可以在您的主机上进行,因为它是一个特殊网站的简单HTTP请求,例如chat.php?userid=12&action=poll&lasttime=31251
,其中服务器打印自上次以来的所有新消息作为结果。
答案 1 :(得分:1)
您将需要一个可以加载到Javascript上下文中的第三方库。
Javascript本身没有办法做到这一点,你不太可能(当然你不应该)在浏览器中这样做。
答案 2 :(得分:1)
查看Comet
答案 3 :(得分:-4)
您是否考虑过在Flex中构建应用?你可以利用Flex的XMLSocket类来实现一个低延迟的聊天客户端 - 几乎就是它的设计目的