2014-03-31 46 views
2

我想实现一个学校项目的n层架构应用程序。 客户端与服务器之间的通信使用RESTful Web服务完成。 我使用泽西岛来执行此Java。我唯一的问题是,如何注册客户端在服务器接收变化的通知(如通常与观察者模式或听/发布模式)。我是否还需要在客户端实施服务,然后注册由服务器调用的URL,然后在发生更改时调用这些URL?REST风格的Web服务与泽西岛Java和观察者模式

感谢您的帮助!

回答

3

通常,在基于http的客户端服务器方案中,服务器始终响应请求。没有客户端请求,服务器不能发送任何东西(通知)。但有服务器将数据推送到客户端的用例没有客户端请求,因此Server-Push出现了。

泽西岛Server-Sent Events (SSE)的形式提供服务器推送。该文件说,

服务器发送的事件(SSE)是一种机制,允许服务器 一旦 客户端 - 服务器连接是由客户端建立从服务器异步推数据到客户端

请注意客户端需要建立与服务器第一个的连接。您可以将第一个客户端请求称为注册。连接建立后,服务器可以发送/推送数据给客户端。链接的提及也有工作示例