IdHTTP und Weiterleitung



  • Hallo zusammen,

    ich hab da ein Problem mit der IdHTTP-Komponente.

    Ich will, dass mir der Sourcecode einer Seite in einem Memofeld angezeigt wird.

    Mein Code sieht im Moment folgendermasen aus:

    Memo1->Text = IdHTTP->Get(asLink);
    

    Als Ergebniss bekomme ich nur:

    <html><head><META HTTP-EQUIV="Refresh" CONTENT="0; URL=/seite.htm"></head><body bgcolor="ffffff"></body></html>
    

    In einem simultan programmierten CppWebBrowser-Feld wird aber die komplette Seite angezeigt.

    Ich hab inzwischen herausgefunden das es sich bei dem HTML-Code um eine Weiterleitung handelt.

    Wie bekomme ich denn die Indy-Komponente dazu der Weiterleitung zu folgen und mir den Code der richten Seite anzuzeigen?

    Mit IdHTTP->HandleRedirects und IdHTTP->RedirectMaximum habe ich es schon in verschiedenen Varianten erfolglos versucht.

    Vielen Dank im Voraus.

    Viele Grüße

    Arno



  • geht zwar nur in dem Fall:

    Memo1->Text = IdHTTP->Get(asLink+"/seite.htm");
    

    greetz KN4CK3R



  • Vielen Dank für die Antwort.

    Leider ändert sich die Weiterleitung natürlich, "seite.htm" war nur ein Beispiel.

    Hmm, man könnte natürlich die eine rückgegebene Zeile zerpflücken, aber das muss doch direkt mit TIdHTTP gehen.

    Grüße

    Arno



  • Hab ein wenig recherchiert und bin auf folgendes gestossen:

    Memo1->Text = IdHTTP->Get(asLink);
    Memo1->Text = IdHTTP->Get(IdHTTP->Response->Location);
    

    Funktioniert soweit.

    Hat irgendwer ne bessere oder saubrere Idee?

    Gruß

    Arno

    Edit: hab mir gerade mal angeschaut, was ...Response->Location zurückliefert. Es ist NULL! Könnt mir das mal einer erklären, bitte?

    Edit: funktioniert doch nicht.


Anmelden zum Antworten