Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Kommunikation mit HTTP-Server, Fallback von V2 auf V1.1 erzwingen (https://www.delphipraxis.net/205831-kommunikation-mit-http-server-fallback-von-v2-auf-v1-1-erzwingen.html)

Blo 21. Okt 2020 12:33

Kommunikation mit HTTP-Server, Fallback von V2 auf V1.1 erzwingen
 
Wie kann ich bei der Kommunikation mit einem HTTP-Server unter Verwendung der Delphi-eigenen Komponenten, dem HTTP-Server zu Beginn der Kommunikation beibringen, dass dieser nicht das Protokoll 2 sondern die Version 1.1 verwenden soll?

System: Delphi 10.3.3, Windows 10

Mit freundlichen Grüßen
Ulrich Blomeyer

TurboMagic 21. Okt 2020 20:34

AW: Kommunikation mit HTTP-Server, Fallback von V2 auf V1.1 erzwingen
 
Evtl. geht sowas über die Header.

Rolf Frei 22. Okt 2020 17:06

AW: Kommunikation mit HTTP-Server, Fallback von V2 auf V1.1 erzwingen
 
Wieso willst du das denn überhaupt machen? Das macht der Server doch selbständig. Wenn der Client kein HTTP/2 unterstützt wird automatisch auf 1.1 zurück gestellt. Die Delphi Anwendung braucht da garnichts weiter machen. Du musst nur den HTTP/1.1 Header schicken, was aber so oder so schon gemacht wird.

Redeemer 22. Okt 2020 21:29

AW: Kommunikation mit HTTP-Server, Fallback von V2 auf V1.1 erzwingen
 
Eben, Rolf. Der Client schreibt dem Server in der ersten Zeile die von ihm maximal unterstützte HTTP-Version. Bei Indy ist das HTTP/1.1. Der Server nutzt dann höchstens diese Version.

Beispiele:
Der Client hat keine Lust, die Verbindung zu trennen. Also fragt er HTTP/1.0 an. Der Server könnte zwar mehr, hält sich aber an HTTP/1.0 und trennt die Verbindung.
Der Client fragt HTTP/2.0 an. Mein selbst geschriebener HTTP-Server weiß aber zu Beginn der Antwort noch nicht, wie groß die Daten sind, die er dem Client schicken möchte, und möchte auch kein Chunking verwenden. Also sendet er dem Client als Antwort HTTP/1.0.

Rolf Frei 23. Okt 2020 18:46

AW: Kommunikation mit HTTP-Server, Fallback von V2 auf V1.1 erzwingen
 
Die Frage war aber anders formuliert. Er will mit einem Server der HTTP/2 unterstützt nur mit HTTP/1.1 kommunizieren. Da Indy nur mit HTTP/1.1 connected, sehe ich das Problem nicht, da so der Server dann auch mit HTTP/1.1 antwortet.

Blo 28. Okt 2020 11:28

AW: Kommunikation mit HTTP-Server, Fallback von V2 auf V1.1 erzwingen
 
Danke für die Antworten!

Mittlerweile klappt es. Der Server antwortet automatisch mit http/1.1, wenn er mit http/1.1 angesprochen wird.
War ein nicht passender Eintrag in der Server-Konfiguration.

Gruß
Ulrich


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:03 Uhr.

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