Scala Dispatch库:如何处理连接失败或超时?
发布时间:2020-12-16 08:53:44 所属栏目:安全 来源:网络整理
导读:我一直在客户端中使用Databinder Dispatch库来获得简单的REST-ish API.我知道如何检测我是否收到错误状态的HTTP响应: Http x (request) { case (200,_,content) = successResult(content()) case (404,_) = notFoundErrorResult case (_,_) = genericErrorR
我一直在客户端中使用Databinder Dispatch库来获得简单的REST-ish API.我知道如何检测我是否收到错误状态的HTTP响应:
Http x (request) { case (200,_,content) => successResult(content()) case (404,_) => notFoundErrorResult case (_,_) => genericErrorResult } 但是,由于域无效或连接失败,如何区分错误响应和完全没有响应的错误?有没有办法在仍然使用同步语义的同时实现超时?如果API中有任何相关内容,我就错过了. 解决方法
还有一种更优雅的方法来使用Http.configure方法配置客户端,该方法接收Builder => Builder函数作为参数:
val http = Http.configure(_.setAllowPoolingConnection(true).setConnectionTimeoutInMs(5000)) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |