Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Problem mit Indy HTTP (IdHTTP), Bug? (https://www.delphipraxis.net/140729-problem-mit-indy-http-idhttp-bug.html)

luke2 24. Sep 2009 19:59


Problem mit Indy HTTP (IdHTTP), Bug?
 
Hallo,

Folgendes:
Ich sende mit der Indy HTTP Kompo. (IdHTTP) einen POST-Request an eine Seite und bekomme einen 302 Redirect (HandleRedirects ist aktiviert) zurück.
Anstatt jetzt die Seite, auf die der Redirect erfolgt wieder normal mit einem GET-Request aufzurufen, wird nochmal dasselbe gepostet.

Kann man der Kompo. beibringen die Daten nur einmal zu posten und alles was danach kommt wieder zu getten, so wie es sein soll?

Danke!

Klaus01 24. Sep 2009 20:08

Re: Problem mit Indy HTTP (IdHTTP), Bug?
 
.. nur der Vollständigkeit halber:

Welche Indy Version?

Grüße
Klaus

luke2 24. Sep 2009 20:29

Re: Problem mit Indy HTTP (IdHTTP), Bug?
 
Die Version, die mit D2010 mitgeliefert wird, ich denke mal, das ist die neueste.

Assertor 24. Sep 2009 21:05

Re: Problem mit Indy HTTP (IdHTTP), Bug?
 
Hi,

Zitat:

Zitat von luke2
Anstatt jetzt die Seite, auf die der Redirect erfolgt wieder normal mit einem GET-Request aufzurufen, wird nochmal dasselbe gepostet.

Kann man der Kompo. beibringen die Daten nur einmal zu posten und alles was danach kommt wieder zu getten, so wie es sein soll?

Ist kein Bug. 302 Redirect (eigentlich Found) ist es nach RFC 1945 und 2068 untersagt, die Methode bei einem Redirect zu ändern. Indy hält sich nur daran. Ich weiß nicht woher Deine Annahme kommt, dies sei ein Bug.

Gruß Assertor

luke2 24. Sep 2009 21:24

Re: Problem mit Indy HTTP (IdHTTP), Bug?
 
Danke schonmal, die genaue Antwort vom Server heißt "HTTP/1.x 302 Found".
Ich wusste nicht genau, ob es ein Bug ist, ich hab mich nur an Firefox + Live HTTP Headers gerichtet und da wird nach dem posten nur noch "gegettet".

Ich habe jetzt vorerst so gelöst, indem ich im OnRedirect Event die Header und Postdaten manuell resette.
Ist zwar nicht so schön, aber klappt. :zwinker:

Assertor 25. Sep 2009 11:18

Re: Problem mit Indy HTTP (IdHTTP), Bug?
 
Hi luke2,

Zitat:

Zitat von luke2
Danke schonmal, die genaue Antwort vom Server heißt "HTTP/1.x 302 Found".
Ich wusste nicht genau, ob es ein Bug ist, ich hab mich nur an Firefox + Live HTTP Headers gerichtet und da wird nach dem posten nur noch "gegettet".

Ist ja kein Problem, wollte nur darauf hinweisen, dass es so wie es Indy macht korrekt ist.

Zitat:

Zitat von luke2
Ich habe jetzt vorerst so gelöst, indem ich im OnRedirect Event die Header und Postdaten manuell resette.
Ist zwar nicht so schön, aber klappt. :zwinker:

Ich finde die Lösung ok, schießlich weichst Du beim Redirect bewußt vom Standard-Verhalten ab. Der genutzt Event ist richtig und die Umsetzung auch, also sehe ich da keine Probleme.

Gruß Assertor

luke2 25. Sep 2009 11:49

Re: Problem mit Indy HTTP (IdHTTP), Bug?
 
OK, Danke nochmal. :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz