【问题标题】:Communication client-server-client通信客户端-服务器-客户端
【发布时间】:2012-06-26 12:07:34
【问题描述】:

我对客户端和服务器之间的通信有疑问。

我想创建一个可以执行以下操作的 GWT 应用程序:

客户端 A 向服务器触发一个事件,然后服务器又向客户端 B 触发一个事件。 这里客户端 B 必须能够一直监听事件。

我想向连接的客户端 B 实时发送一些数据很少的事件。 那可能吗?如果是,我该怎么做?

谢谢

【问题讨论】:

    标签: gwt smartgwt gwt-rpc


    【解决方案1】:

    这里客户端 B 必须能够一直监听事件。

    要让客户端等待数据,您可以使用 Comet [1](长期 HTTP 请求)或 WebSockets [2](如果目标 JS 运行时支持)。

    [1]:http://code.google.com/p/gwt-comet/

    [2]:http://code.google.com/p/gwt-ws/

    【讨论】:

    • 非常感谢,我认为这对我有帮助。我还有一个问题,彗星在服务器站点上是如何工作的? servlet 是否必须一直在 Web 服务器上运行?
    【解决方案2】:

    here is one example当然,对于客户端和服务器之间的通信,您必须使用 Rpc(远程过程调用)。您可以通过 rpc 将数据作为序列化对象发送和接收

    【讨论】:

    • 感谢您的回复。我遇到的问题是两个客户端之间通过服务器进行的通信。这意味着客户端 A 触发必须通过服务器实时从客户端 B 接收的事件或消息。正常的 RPC 允许我从服务器获取序列化对象,但我需要从服务器获取消息而不发送请求。
    【解决方案3】:

    只需将客户端 (A) 请求的结果存储在数据库中。并编写客户端代码以从数据库请求内容,在服务器中对其进行处理并将结果返回给客户端(在您的情况下为客户端 B)

    【讨论】:

    • 感谢您的回复,客户端 B 必须实时接收更改。这意味着没有请求。
    猜你喜欢
    • 1970-01-01
    • 2012-12-26
    • 2011-09-05
    • 2012-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-17
    • 2011-07-06
    相关资源
    最近更新 更多