2

getResponseCode()== 404で、getInputStream()が例外をスローする場合、以下のように作成された単純なhttp-getの応答を読み取る方法はありますか?可能であれば、java.netを使い続けたいと思います。

HttpURLConnection c = (HttpURLConnection)new URL("http://somesite.com").openConnection;
c.openInputStream();

つまり、私は(実際に)Javaで読みたいサイトがあり、404で応答しますが、とにかく応答を処理するので、ブラウザーに表示されます。

4

1 に答える 1

4

の場合はgetErrorStream()メソッドを使用しますgetResponseCode() == 404

HttpURLConnection c = (HttpURLConnection)new URL("http://somesite.com").openConnection();
InputStream in = null;
if (c.getResponseCode() >= 400) {
   in = c.getErrorStream();
}  
else {
   in = c.getInputStream();
}
于 2012-08-13T18:12:59.040 に答える