RESTful服务-问题

RESTful服务-问题,rest,service,Rest,Service,我是一名经验丰富的C/C++应用程序程序员,但对Web编程、REST等相对较新 有一个中央服务器,用于监视各种其他客户机。服务器公开了一些API,客户机通过这些API定期向服务器发送状态更新和其他内容。虽然总是由客户机联系服务器,但服务器也通过对POST方法的响应向客户机发送命令&客户机方法对其进行操作 现在,如果服务器本身主动地向客户端发送一些消息,这是可能的吗?即客户端每小时只连接一次,但在中间服务器需要请求客户端联系它——这是可能的吗? 如果没有,则是获得一些带外数据的唯一方法,即让客户端

我是一名经验丰富的C/C++应用程序程序员,但对Web编程、REST等相对较新

有一个中央服务器,用于监视各种其他客户机。服务器公开了一些API,客户机通过这些API定期向服务器发送状态更新和其他内容。虽然总是由客户机联系服务器,但服务器也通过对POST方法的响应向客户机发送命令&客户机方法对其进行操作

现在,如果服务器本身主动地向客户端发送一些消息,这是可能的吗?即客户端每小时只连接一次,但在中间服务器需要请求客户端联系它——这是可能的吗?


如果没有,则是获得一些带外数据的唯一方法,即让客户端也在单独的端口上运行单独的进程侦听。无论何时,服务器想要联系客户机,服务器都会向该端口上的特定客户机发送一些消息,要求客户机联系服务器?

根据具体情况,有两种方法。如果您的网络允许从服务器连接到客户端,那么您可以在客户端上公开一个最小的Web服务器或类似RPC的接口,并从服务器连接到该接口。如果这是不可能的,例如,因为您的客户端位于防火墙或NAT网关之后,那么客户端将需要轮询服务器,以查看是否有任何命令等待