我一直在客户端使用Databinder Dispatch库来处理一个简单的REST-ish API。我知道如何检测是否接收到了具有错误状态的HTTP响应:
Http x (request) {
case (200, _, _, content) => successResult(content())
case (404, _, _, _) => notFoundErrorResult
case (_, _, _, _) => genericErrorResult
}
但是,我如何区分错误响应和由于无效域名或连接失败而未能获得任何响应的情况?是否有任何方法可以在仍使用同步语义的同时实现超时?如果API中有任何相关内容,我可能已经错过了。