Java HttpClient获取状态代码并按照重定向获取结束页状态代码

Java HttpClient获取状态代码并按照重定向获取结束页状态代码,java,apache-httpclient-4.x,Java,Apache Httpclient 4.x,试图让HttpClient按我想要的方式工作,我快疯了。这一切都在我头上 我所要做的就是提供一个URL,这个URL可以指向网页、.zip文件、.doc文件,并重定向到上面的任何一个位置。然后,我将能够将最终状态代码打印到控制台 有人能帮我吗?到目前为止,我已经(在把所有的东西都扔向它之后,代码一团糟): 编辑: 对于这个url:我得到404。我本以为会有200人 因为我得到了预期的200分 对于tinyurl重定向到google.com,我得到了一个200 我不知道该如何评价我的结果。我只想能够

试图让HttpClient按我想要的方式工作,我快疯了。这一切都在我头上

我所要做的就是提供一个URL,这个URL可以指向网页、.zip文件、.doc文件,并重定向到上面的任何一个位置。然后,我将能够将最终状态代码打印到控制台

有人能帮我吗?到目前为止,我已经(在把所有的东西都扔向它之后,代码一团糟):

编辑:

对于这个url:我得到404。我本以为会有200人

因为我得到了预期的200分

对于tinyurl重定向到google.com,我得到了一个200


我不知道该如何评价我的结果。我只想能够测试链接,从最终用户的角度看它们是否正常工作或损坏。

问题是,您发送的是HEAD请求,而不是GET请求,xbox站点只返回404

使用:

HttpGet test = new HttpGet("http://support.xbox.com/en-US/xbox-live/troubleshoot/game-play");

没有任何重定向的东西对我来说很好。

告诉我们上面的代码输出的是什么,以及您看到的不希望出现的行为是什么,这会很有用。此外,状态代码不一定是硬编码的。使用
HttpStatus
常量。但是,如果我尝试使用它来获取指向大型.zip文件的链接的状态,在将其状态返回给我之前,它不会尝试下载该文件吗?状态代码将位于响应的标头中,因此,只要您不尝试读取请求的内容,httpclient就不会读取它。请记住,只要将httpclient日志记录配置为调试级别,就可以始终看到客户端和服务器之间的交换。
HttpGet test = new HttpGet("http://support.xbox.com/en-US/xbox-live/troubleshoot/game-play");