繁体   English   中英

使用node.js或applet在jsp中进行聊天的应用程序

[英]chat application in jsp with node.js OR applets

最近几天,我正在研究实现Web技术上chatting的更好方法。

我做了研究,发现node.js也有如下问题

  1. 由于web sockets跨浏览器支持(不支持IE的较早版本)。
  2. 作为新工具,这些工具仍在开发中,因此API不稳定。
  3. 他们没有很好的文档可循(但是,是的,有很多文章可以帮助您)

然后,我决定将其制作成小程序,以便于制作,但像往常一样,我进行了一些研究,并且此链接确实对我有所帮助。

它还有一些问题,例如

  1. 有些组织仅允许管理员安装软件。 结果,默认情况下,许多用户无法查看小程序。
  2. 小程序可能需要特定的JRE。
  3. 在Java虚拟机运行之前,它无法启动,并且第一次使用它可能需要大量的启动时间。

我也问过这个问题,但是我只有一个解决方案,实现起来也有点复杂,而且还使用了网络套接字。

我希望使这种应用程序至少达到IE6IE7用户不会有任何问题。

我的问题是,什么是更好的实施方法?

除了这两个功能之外,还有其他什么可以实现相同的功能,还是我们只能选择这两个功能之一?

我没有使用任何框架。 JSP + SERVLET

使用Node.js并不限制可以以任何方式将哪些浏览器用作客户端。 Node.js是“仅”服务器。 您可以使用普通的旧HTTP请求进行所有通信,而忽略websocket,并且可以构建一个即使在IE5上也可以使用的聊天客户端。

如果您决定将websockets用作通信协议,则将限制可用浏览器的数量,但是该决定并非强加于您。

另一方面,使用Java小程序会严重限制将运行您的应用程序的浏览器的数量:虽然大多数浏览器都可以运行小程序,但并非所有计算机都安装了Java运行时(坦率地说:很少有人会安装它来运行聊天程序)应用)。 您还将通过此选择将几乎所有移动平台排除在外:它们通常不能运行applet(对于支持Java作为其主要编程环境的移动平台而言,甚至也是如此)。

而且我对Node.js文档的质量也意见分歧。 该文档很小,但是非常完整:Node.js没有庞大的API。 对于基于Node.js的库,它可能有所不同:其中一些文档有据可查,而另一些则没有。 通常,这取决于它们的使用范围。

最好的解决方案是一个框架,当WebSocket不可用时(例如长轮询,闪存Websocket等),该框架可以抽象出传输逻辑并优雅地降级为其他传输。

Socket.IO是这样的解决方案,无论传输层如何,您都具有相同的API,并且您的应用程序即使在IE6中也可以运行(因此,处处可见): http : //socket.io/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM