【问题标题】:Socket to receive data and push to client browser in a web application在 Web 应用程序中接收数据并推送到客户端浏览器的套接字
【发布时间】:2013-02-09 00:08:30
【问题描述】:

我需要连接一个 SocketServer,接收数据,然后将其推送回客户端(网络浏览器)。

我只需要确认方法。我将创建一个 Socket 连接,它将在 ServletContextListener 中继续侦听消息。然后消息将存储在 ServletContext 中,以便可以将其推送回客户端浏览器。

  1. 我应该在 ServletContextLister 中创建套接字连接吗?或者有没有其他方法可以监听socket?

  2. 为了将数据推送回客户端,我不想进行双向通信。那么我应该选择 SSE 还是 Html5 WebSockets?任何支持 SSE 或 WebSocket 以及客户端库的 java 框架?

谢谢

【问题讨论】:

    标签: sockets jakarta-ee web-applications server-sent-events server-push


    【解决方案1】:

    我实现了这个并且它工作正常。对于服务器,我使用 Jetty 8 并使用了 jetty 的 WebSocket。

    简单来说,我是如何实现的,为了监听来自 SocketServer 的消息,我实现了 ServletContextListener,它初始化 Socket 来消费消息。

    当用户点击 url 时,我将 WebSocket 连接添加到 Collection 并将该集合存储为 ServletContext 属性。然后,这个 WebSocket 列表由 Socket 访问,它在消息到达时迭代并发送消息。然后将消息推送回所有连接的客户端。

    【讨论】:

      猜你喜欢
      • 2011-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-14
      • 1970-01-01
      • 1970-01-01
      • 2014-05-05
      • 1970-01-01
      相关资源
      最近更新 更多