有时,我们的App需要实时监听网络服务器的在线状态,并在界面中及时反馈给用户。
如上图所示,当 ruby 搭建的 Web 服务器被停止时,App的显示界面会立即提示用户。
借助 Combine 框架,这仅需寥寥十几行代码即可完成,而且逻辑相当简单和清晰。
无需多言,Let‘s go!!!
功能分析 1. App 如何判断网络服务器当前是否在线?要判断服务器当前是否在线很简单,只需向其发送特定的网络请求,并检查服务器的响应。
这里,为了调试方便,我们的服务器架设在本地Mac上,并绑定 8080 端口。所以它的 url 地址为 http://localhost:8080 (或 http://127.0.0.1:8080)。
我们在服务器端配置了一条 ‘/alive’ 路由,用来返回自身在线状态:
server.mount_proc