Hypertext Transfer Protocol (HTTP)
Eintrag zuletzt aktualisiert am: 15.09.2022
Hypertext Transfer Protocol (HTTP) ist das Standardprotokoll in Web-Anwendungen, das nach dem Request-Response-Verfahren auf Basis von
TCP/IP arbeitet.
Versionsgeschichte
HTTP/1.0 wurde 1996 standardisiert.
HTTP/2 ist eine Erweiterung zum ursprünglichen HTTP-Protokoll. Eine Verbindung startet weiterhin mit HTTP/1, kann aber ein Upgrade auf HTTP/2 bekommen, weil Client (Browser) und Server dies unterstützen. HTTP/2 wurde im
RFC 7540 am 14.5.2015 veröffentlicht. Die meisten Browser unterstützen HTTP/2 seit dem Jahr 2015.
Eigenschaften von HTTP/2:
- HTTP/2 kann optional anstelle von TCP/IP auf Quic UDP Internet Connections (QUIC) aufsetzen.
- Binäre, komprimierte Übertragung des HTTP-Headers
- Bidirektionale Kommunikation
HTTP/3 basiert nicht mehr auf
TCP/IP, sondern auf
Quic UDP Internet Connections (QUIC) und ist schneller als HTTP/2.
HTTP-Clients in .NET
System.Net.WebRequest --> ältere Implementierung seit
.NET Framework 1.0
System.Net.Http.HttpClient --> neuere Implementierung
Beispiel: Abruf einer Webseite per HTTP in .NET
// Absenden einer HTTP-Anfrage
public void HTTP_Anfrage()
{
const string
URL = "
http://www.it-visions.de";
// Anfrage definieren
HttpWebRequest frage = (HttpWebRequest)HttpWebRequest.Create(
URL);
// Antwort holen
HttpWebResponse antwort = (HttpWebResponse)frage.GetResponse();
// Meta-Daten
Demo.Print("Antwortlänge: " + antwort.ContentLength)
Demo.Print("Status: " + antwort.StatusCode);
Demo.Print("Letzte Änderung: " + antwort.LastModified)
Demo.Print("Inhaltstyp: " + antwort.ContentType);
// Inhalt ausgeben
StreamReader sr = new
StreamReader(antwort.GetResponse
Stream());
Demo.Print(sr.ReadToEnd());
}