Komm nicht an den Content ran: Server returned HTTP response code XXX

StehtimSchilf

Erfahrenes Mitglied
Hi Forum

irgendwie raff' ich das nicht:

Wenn meine java Appli HTTP 200 zurück gibt, dann kann ich den Content auslesen. Aber bei HTTP 406 erhalte ich:

eine java.IOException: Server returned HTTP response code: 406 for URL: http://localhost:81/LoginSession


stark verkürzter Code:
Code:
URL url = new URL("http://" + urlString + request);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.connect();

// Responsecode eineseln
responseCode = conn.getResponseCode();

// hier tritt Fehler auf wenn HTTP Code != 200 - aber wieso?
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));

Laut HTTP RFC 2616 darf ja in 406 content zurück gegeben werden?

Ich ändere in meiner Appli die den Content zurückschickt nur den Code von 200 auf 406 und schwupp - tot!

Ich gebe derzeit KEINE ZUSÄTZLICHEN Header-Wert zurück. liegts wohl daran?


cheerioh
SiS

[Edit] HTTP 202 Contents kann ich ebenfalls auslesen..... [/Edit]
 
Zuletzt bearbeitet:
mhn die 4xx er Meldungen stehen doch für :
* 4xx: Fehler beim Client Die Anfrage ist syntaktisch falsch oder kann nicht ausgeführt werden.



würde vermuten, dass ist ein Feature von java, dass du dann da eine Exception bekommst....^^
(würde ja auch Sinn machen....weil der Server gibt ja zurück, dass die Homepage nicht korrekt ausgeführt werden kann....bzw die Anfrage falsch war.....würdest du dann nicht wie du es gemacht hast dir den Response Code extra ausgeben lassen....würdeste wohl gar nicht merken, dass was an der Anfrage falsch war und auf den bzw mit den falschen Daten arbeiten)

würde sagen die Exception bekommst du bei allen 4xx Response Codes

und die 2xx werden wohl alle Problemlos gehen
 

Neue Beiträge

Zurück