Vorzeitiges Ende von " Content-Length delimited Nachrichtentext (erwartet:
Ich versuche zu bekommen HTTP-Antwort mit Hilfe von apache httpclient. Ich bekomme Header erfolgreich, aber es wirft exception wenn ich versuche zu bekommen Inhalt. Ausnahme:
org.apache.http.ConnectionClosedException: Premature end of Content-Length delimited message body (expected: 203856; received: 1070
at org.apache.http.impl.io.ContentLengthInputStream.read(ContentLengthInputStream.java:180)
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177)
at java.io.InputStreamReader.read(InputStreamReader.java:184)
at java.io.BufferedReader.fill(BufferedReader.java:154)
at java.io.BufferedReader.readLine(BufferedReader.java:317)
at java.io.BufferedReader.readLine(BufferedReader.java:382)
und mein code ist:
InputStream is = entity.getContent();
BufferedReader br = new BufferedReader( new InputStreamReader(is, "UTF-8"));
String line;
String str = "";
while ((line = br.readLine()) != null) {
str = str + line + "\n";
}
log.debug(str);
jede Hilfe wird geschätzt. Dank
InformationsquelleAutor Khanjee | 2014-04-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Scheint das problem auf der server-Seite, nicht in den client-code, den Sie eingefügt haben.
Dem server behauptet, dass der Inhalt 203856 Byte, sondern nur geschickt 1070.
InformationsquelleAutor Daniel Renshaw
Könnte ich vielleicht Antworten auf es späten. Aber ich begegnet auch das gleiche problem. Und ich habe die Auflösung.
In meinem Fall war ich beim schließen des client vor der Nutzung der HttpEntity. Und nach dem schließen des client-ich habe versucht, die Datei herunterzuladen. Code unten ist ähnlich, was ich Tat:
Nach dem einstellen mein code zum herunterladen der Datei vor dem schließen des Clients, Seine arbeiten jetzt für mich. Code unten ist ähnlich, was ich getan habe:
InformationsquelleAutor Nitin