0

HTTP 接続を開き、それにデータを書き込み、応答コードを取得する Java コードがあります。接続に問題がなかったため、HTTP_OK (つまり 200) が返されるはずですが、1 が返されています。

1 は HTTP 応答コード仕様のどこにも表示されないため、これは不可解です。潜在的な問題領域について誰かアイデアを出してもらえませんか?

以下はコードの一部です:

URL tempURL = new URL("http://www.google.com");

obj_URLHttpConnectionServlet = (HttpURLConnection)tempURL.openConnection();
obj_URLHttpConnectionServlet.setDoInput(true);
obj_URLHttpConnectionServlet.setDoOutput(true);

OutputStream obj_OutputStream = obj_URLHttpConnectionServlet.getOutputStream();

obj_OutputStream.write(sConfigurationData.getBytes());
obj_OutputStream.flush();
obj_OutputStream.close();
obj_OutputStream = null;

int iResponseCode = obj_URLHttpConnectionServlet.getResponseCode();
System.out.println("Response code received is : " + iResponseCode);

出力

受信した応答コード: 1

4

1 に答える 1

0

サーバー側が に設定しているため1です。これがあなたの管理下にある場合は、その原因となっているコードを確認/修正してください。これが制御できない場合は、サイト管理者に報告/連絡してください。


更新: コメントによると、Fiddlerは、サーバー側が応答ヘッダーの最初の行を に設定したことを確認しましたHTTP/200 1。それは明らかに奇妙です。のように見えるはずですHTTP/1.1 200。スペースの前の部分はプロトコル/バージョンを示し、スペースの後の部分は応答コードを示す必要があります。これはますますサーバー側の問題に見えます。サイト管理者に連絡します。

于 2010-09-10T13:08:35.323 に答える