使用HttpURLConnection.getResponseCode()时得到0

时间:2010-09-20 16:36:25

标签: java android

我用这种方式使用HttpURLConnection类:

HttpURLConnection con=(HttpURLConnection) servlet.openConnection();
int conResponseCode = con.getResponseCode();

有时我将conResponseCode改为 0

我试着在网上看,但却找不到它的含义?

知道为什么会出现这种情况吗?它说的是什么?

谢谢, 射线。

1 个答案:

答案 0 :(得分:0)

这不是一个有效的HTTP响应,所以它本身并不意味着什么。

查看java.net.HttpURLConnection的源代码(这是我认为你的意思),它似乎只是从响应行解析整数状态代码。这似乎意味着远程服务器正在返回以下行的响应:

  

HTTP / 1.0 0 XXX

(XXX是某种原因)。

如果您使用telnet(或类似程序)自行提出请求,或者可以在调试器中的Java源代码上放置断点,那么在这种情况下,您将能够看到从远程服务器发回的内容。

无论哪种方式,这都是Java库中的错误(可能,但不太可能)或来自远程服务器的奇怪响应。获取响应的原始内容将允许您区分这两者,然后使用错误报告ping相关方。