I ConnectionRequest und downloadImageToStorage bin mit einem Bild von einem Web-Server zum Download bereit. Der Webserver gibt einen 307 mit einem Ort zurück, dass die nächste URL einen 301 mit einem anderen Ort zurückgibt, dieser Ort gibt schließlich das tatsächliche Bild zurück.Umgang mit 307 und 301 in ConnectionRequest
definiert ich eine FailureCallback, aber es ist nicht immer überhaupt bezeichnet. Alles, was ich sehen kann, ist eine Nachricht auf dem Bildschirm des Geräts, die den Fehler anzeigt und eine Schaltfläche zum Wiederholen/Abbrechen hat.
Hier ist mein Code
FailureCallback<Image> failure = new FailureCallback<Image>() {
public void onError(Object sender, Throwable err, int errorCode, String errorMessage) {
System.out.println(errorCode);
if (errorCode == 307 || errorCode == 301) {
System.out.println(sender.getClass().getName());
}
}
};
ConnectionRequest request = new ConnectionRequest();
request.setUrl(url);
request.setHttpMethod("GET");
request.downloadImageToStorage("img_" + imgCount, (img) -> {
SpanLabel t = new SpanLabel();
t.add(BorderLayout.CENTER, img);
myform.add(t);
}, failure);
++imgCount;
Wie kann ich diese Fehler erfassen, damit ich die Lage von der Antwort Objekten erhalten kann und die mit neuen ConnectionRequests nennen?
Bitte beachte, dass ich die Kette von Fehlercodes sehen und Orten, wenn ich den Debugger in Chrome verwenden, um das Bild, das ich zu laden versuchen.
Dank
Die Tatsache, dass nicht aufgerufen fail ist möglicherweise ein Fehler sein, habe ich Steve fragte in die aussehen, als er diese Methode geschrieben und vielleicht einen besseren Einblick in diese haben. –