Java http错误代码返回时客户端捕获IOException
我有一个java独立应用程序,它通过一个接口公开了两种方法:get-to向URL发出get请求和post-to向URL发出post请求。我使用纯Java实现这些方法(没有Apache HTTP客户端) 我的问题是,在从服务器返回HTTP错误时,我得到一个IOException客户端(对于所有代码>=400)。争论这是否是一个正确的行为是没有什么意义的。 无论如何,我需要检查IOException是由连接问题还是HTTP错误引起的,因为我必须为这两种情况实现不同的行为。有人知道一个像样的解决方案来检查这一点吗?(我所说的体面是指不检查异常消息“服务器返回HTTP响应代码”) 任何想法都非常感谢Java http错误代码返回时客户端捕获IOException,java,http,post,get,ioexception,Java,Http,Post,Get,Ioexception,我有一个java独立应用程序,它通过一个接口公开了两种方法:get-to向URL发出get请求和post-to向URL发出post请求。我使用纯Java实现这些方法(没有Apache HTTP客户端) 我的问题是,在从服务器返回HTTP错误时,我得到一个IOException客户端(对于所有代码>=400)。争论这是否是一个正确的行为是没有什么意义的。 无论如何,我需要检查IOException是由连接问题还是HTTP错误引起的,因为我必须为这两种情况实现不同的行为。有人知道一个像样的解决方案来
谢谢 除了解析异常字符串之外,您没有什么可以做的。如果查看HttpURLConnection的源代码:
if (respCode >= 400) {
if (respCode == 404 || respCode == 410) {
throw new FileNotFoundException(url.toString());
} else {
throw new java.io.IOException("Server returned HTTP" +
" response code: " + respCode + " for URL: " +
url.toString());
}
}
你会发现这没有多大帮助