标签: swift macos
我正在构建一个需要从服务器获取数据的OSX应用程序。简单的方法是在某个固定的时间间隔发出GET请求,并处理结果。那不是我想要的。我想要相反的方式:例如当服务器端发生某些事情时,服务器将数据发送到我的应用程序。这样我就不需要从客户端提出持续的请求。我不需要在视觉上显示数据,只需要处理。
这可以在OSX中用Swift实现吗?
答案 0 :(得分:1)
您有两种方法可以实现这一目标:
<强>的WebSocket:强>
Websocket是TCP-Connection上的全双工通信通道。它是通过HTTP建立的。
长轮询
与您之前说过的相同,但没有直接回应。您的客户端发出HTTP请求并设置一个非常长的超时计时器。事情发生后,服务器会做出响应。 (More)
我建议您使用Websocket,因为它是专为此用例构建的。但是如果你必须快速实现它,你现在可能应该进行长轮询,因为实现它的障碍要低得多,并且稍后切换到Websocket。