Webframeworkk/ASP.NET Core/Http

Aus Dokument
Version vom 15. Februar 2026, 17:26 Uhr von Thorsten (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „ == 1. Was ist HTTP? == HTTP (Hypertext Transfer Protocol) ist das grundlegende Protokoll für die Kommunikation im Web. Es arbeitet nach dem Client-Server-Modell: Ein Client (z.B. Browser) sendet eine Anfrage, der Server antwortet mit Ressourcen oder Fehlermeldungen. HTTP ist zustandslos – jeder Request ist unabhängig. == 2. HTTP-Server und Kestrel == Ein HTTP-Server verarbeitet Anfragen und sendet Antworten. Beispiele: Apache, Nginx, IIS, Kestrel (A…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).



1. Was ist HTTP?

HTTP (Hypertext Transfer Protocol) ist das grundlegende Protokoll für die Kommunikation im Web. Es arbeitet nach dem Client-Server-Modell: Ein Client (z.B. Browser) sendet eine Anfrage, der Server antwortet mit Ressourcen oder Fehlermeldungen. HTTP ist zustandslos – jeder Request ist unabhängig.

2. HTTP-Server und Kestrel

Ein HTTP-Server verarbeitet Anfragen und sendet Antworten. Beispiele: Apache, Nginx, IIS, Kestrel (ASP.NET Core). Kestrel ist ein moderner, plattformübergreifender Webserver für ASP.NET Core.

3. Ablauf einer HTTP-Anfrage in ASP.NET Core

  1. Client sendet HTTP-Anfrage.
  2. Kestrel empfängt die Anfrage und leitet sie durch die Middleware-Pipeline.
  3. Middleware verarbeitet die Anfrage und gibt sie an die Anwendung weiter.
  4. Die Anwendung generiert eine Antwort.
  5. Kestrel sendet die Antwort zurück an den Client.

4. HTTP-Requests und -Responses

  • Request: Enthält Methode (GET, POST, etc.), URI, Version, Header und optional einen Body.
  • Response: Enthält Version, Statuscode, Header und optional einen Body.

Beispiel für eine HTTP-Response

HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 137
<html>
<body>
<h1>Hello, World!</h1>
</body>
</html>

5. Wichtige Statuscodes

  • 200 OK: Erfolg
  • 201 Created: Ressource erstellt
  • 400 Bad Request: Syntaxfehler
  • 401 Unauthorized: Authentifizierung nötig
  • 404 Not Found: Ressource nicht gefunden
  • 500 Internal Server Error: Serverfehler

6. Header und Statuscodes in ASP.NET Core setzen

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();

app.Run(async (HttpContext context) =>
{
    context.Response.Headers["Content-Type"] = "text/html";
    context.Response.StatusCode = 200;
    await context.Response.WriteAsync("<h1>Hello</h1><h2>World</h2>");
});

app.Run();

7. Zugriff auf Request-Informationen

app.Run(async (HttpContext context) =>
{
    string path = context.Request.Path;
    string method = context.Request.Method;
    context.Response.Headers["Content-Type"] = "text/html";
    await context.Response.WriteAsync($"<p>{path}</p><p>{method}</p>");
});

8. GET vs. POST

  • GET: Daten abfragen, Parameter in der URL, idempotent, cachbar.
  • POST: Daten senden, Parameter im Body, nicht idempotent, nicht cachbar.

9. Testen mit Postman

Postman ist ein Tool zum Testen von HTTP-Anfragen. Damit können Sie Ihre ASP.NET Core Endpunkte einfach testen und die Antworten analysieren.

10. Zusammenfassung

HTTP ist das Rückgrat des Webs. ASP.NET Core und Kestrel bieten eine moderne Plattform für Webanwendungen. Mit Middleware, Statuscodes und Headern können Sie flexibel auf Anfragen reagieren und Antworten gestalten.


Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).