Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Http服务时会发生异常处理_Java_Android_Exception Handling_Httpclient - Fatal编程技术网

Java 使用Http服务时会发生异常处理

Java 使用Http服务时会发生异常处理,java,android,exception-handling,httpclient,Java,Android,Exception Handling,Httpclient,在我的应用程序中,我试图处理使用http web服务时可能出现的异常,正如我所知,到目前为止,可能会出现3种类型的异常 传输异常 协议异常 超时异常 我正在android应用程序中使用HttpClient类, 我不必在http请求中提供登录凭据,因此我认为协议异常很少发生,我知道这不是协议异常发生的唯一原因,也是最常见的原因 对于传输异常,我了解到HttpClient是一个处理传输异常的健壮工具,因此它可以处理传输异常和重试请求 那么现在对于超时异常(连接超时和套接字超时)是否重试请求是处理

在我的应用程序中,我试图处理使用http web服务时可能出现的
异常
,正如我所知,到目前为止,可能会出现3种类型的异常

  • 传输异常
  • 协议异常
  • 超时异常
我正在android应用程序中使用
HttpClient
类, 我不必在http请求中提供登录凭据,因此我认为协议异常很少发生,我知道这不是协议异常发生的唯一原因,也是最常见的原因

对于传输异常,我了解到
HttpClient
是一个处理传输异常的健壮工具,因此它可以处理传输异常和重试请求


那么现在对于超时异常(连接超时和套接字超时)是否重试请求是处理这些异常的正确方法?或者有更健壮的解决方案?

如果不在http请求中设置相关属性,则不应获得任何timeoutexception。它们默认设置为0,这意味着没有超时

但是,给出一个适当的超时并按照您的建议处理异常似乎是正确的方法


也许你还应该考虑添加一些代码来检测网络状态。< / P>是的,我认为你的方法是正确的。