Nach der HTTP-GET-request, der resultierende string ist der cut-off - Gehalt verwendet wurde
Mache ich einen http-get-Anfrage so:
try {
HttpClient client = new DefaultHttpClient();
String getURL = "http://busspur02.aseag.de/bs.exe?SID=5FC39&ScreenX=1440&ScreenY=900&CMD=CR&Karten=true&DatumT="+day+"&DatumM="+month+"&DatumJ="+year+"&ZeitH="+hour+"&ZeitM="+min+"&Intervall=60&Suchen=(S)uchen>0=Aachen&T0=H&HT0="+start_from+">1=Aachen&T0=H&HT1="+destination+"";
HttpGet get = new HttpGet(getURL);
HttpResponse responseGet = client.execute(get);
HttpEntity resEntityGet = responseGet.getEntity();
if (resEntityGet != null) {
//do something with the response
Log.i("GET RESPONSE",EntityUtils.toString(resEntityGet));
}
...
} catch (...) {
...
}
Alles gut funktioniert... das einzige problem: die Ausgabe von Log.ich ist der cut-off - ... Es ist nicht die komplette html-Seite. Wenn ich die gleiche Anfrage in einem browser, ich bekomme 3x die Ausgabe in der opposition, um die Anforderung in den emulator, und mit dem obigen code.... was ist falsch?
FEHLER:
04-30 14:01:01.287: WARN/System.err(1088): java.lang.IllegalStateException: Content has been consumed
04-30 14:01:01.297: WARN/System.err(1088): at org.apache.http.entity.BasicHttpEntity.getContent(BasicHttpEntity.java:84)
04-30 14:01:01.297: WARN/System.err(1088): at org.apache.http.conn.BasicManagedEntity.getContent(BasicManagedEntity.java:100)
04-30 14:01:01.307: WARN/System.err(1088): at org.apache.http.util.EntityUtils.toString(EntityUtils.java:112)
04-30 14:01:01.307: WARN/System.err(1088): at org.apache.http.util.EntityUtils.toString(EntityUtils.java:146)
04-30 14:01:01.307: WARN/System.err(1088): at mjb.project.AVV.ParseHTML.start(ParseHTML.java:177)
04-30 14:01:01.307: WARN/System.err(1088): at mjb.project.AVV.ParseHTML.onCreate(ParseHTML.java:139)
04-30 14:01:01.307: WARN/System.err(1088): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-30 14:01:01.327: WARN/System.err(1088): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
04-30 14:01:01.327: WARN/System.err(1088): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
04-30 14:01:01.327: WARN/System.err(1088): at android.app.ActivityThread.access$2200(ActivityThread.java:119)
04-30 14:01:01.347: WARN/System.err(1088): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
04-30 14:01:01.347: WARN/System.err(1088): at android.os.Handler.dispatchMessage(Handler.java:99)
04-30 14:01:01.347: WARN/System.err(1088): at android.os.Looper.loop(Looper.java:123)
04-30 14:01:01.347: WARN/System.err(1088): at android.app.ActivityThread.main(ActivityThread.java:4363)
04-30 14:01:01.347: WARN/System.err(1088): at java.lang.reflect.Method.invokeNative(Native Method)
04-30 14:01:01.357: WARN/System.err(1088): at java.lang.reflect.Method.invoke(Method.java:521)
04-30 14:01:01.357: WARN/System.err(1088): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
04-30 14:01:01.357: WARN/System.err(1088): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
04-30 14:01:01.357: WARN/System.err(1088): at dalvik.system.NativeStart.main(Native Method)
- Herauszufinden, ob
EntityUtils.toString
schneidet es ab, oder wennLog.i
schneidet es aus. - ...beispielsweise durch die Protokollierung der Länge von der original-string, und dann die eventuell abgeschnittenen string.
- Ich werde das ausprobieren, danke.... es scheint zu sein, dass kurz, es ist nichts "mehr" vor... dann muss es ein problem mit der get-Anfrage oder so etwas?
- Ich hatte kein internet für eine Weile. keep cool !!!
Du musst angemeldet sein, um einen Kommentar abzugeben.
OK ich habe es gelöst.
So wie ich das verstehe, wird der Inhalt des entity verbraucht, wenn es nicht "benutzt". So habe ich eine neue String - Objekt mit dem Inhalt der Person, so zu sagen eine Kopie anstelle einer Referenz auf die Einheit der Inhalte.
DixieFlatline korrekt ist.
Mit diesem bekomme ich teilweise Ausgabe:
Mit dieser erhalte ich volle Leistung:
Ich glaube, dass Anmeldung begrenzt die Anzahl der chars auf 4070. Ich habe versucht, die Anzeige einer langen Schnur in ddms locgat und ich bekam nur 4070 chars.
Toll!
Durch die Art und Weise, wenn Sie mit dem Eclipse-Debug-Perspektive, bei der die "Variablen" Ansicht:
(Window -> Show View -> Variablen)
können Sie mit der rechten Maustaste auf das Fenster, wählen Sie "maximale Länge" und geben Sie "0".
Diese Weise können Sie sehen, alle chars (der komplette html-Code) in der Variablen-Ansicht.