Intern
Welche Arten von HTTP-Anfragen gibt es?
sobes.tech KI
Antwort von AI
Hauptarten von HTTP-Anfragen: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, TRACE, CONNECT.
Beschreibung der häufigsten:
- GET: Fordert die Ansicht einer angegebenen Ressource an. Anfragen mit dieser Methode sollten nur Daten abrufen.
- POST: Sendet Daten zur Verarbeitung an eine bestimmte Ressource. Ein häufiges Ergebnis ist eine Zustandsänderung oder Nebenwirkungen auf dem Server.
- PUT: Ersetzt alle aktuellen Darstellungen der Zielressource durch die Daten im Anfragekörper.
- DELETE: Löscht die angegebene Ressource.
- PATCH: Wendet partielle Änderungen an der Ressource an.
- HEAD: Fordert die Header wie bei
GETan, aber ohne den Antwortkörper. Wird verwendet, um Metadaten zu erhalten. - OPTIONS: Beschreibt die Kommunikationsparameter für die Zielressource.
- CONNECT: Wandelt die angeforderte Verbindung in einen transparenten TCP/IP-Proxy um.
- TRACE: Führt einen Rückmeldungstest auf dem Weg zur Zielressource durch.
Unterschiede zwischen GET und POST:
| Merkmal | GET | POST |
|---|---|---|
| Zweck | Daten abrufen | Daten zur Verarbeitung senden |
| Datenübertragung | Über URL-Parameter (Query String) | Über den Anfragekörper |
| Sicherheit | Idempotent (wiederholte Anfragen ändern den Zustand nicht) | Nicht idempotent |
| Datensichtbarkeit | Sichtbar in der URL, im Browserverlauf, Server-Logs | Nicht sichtbar in der URL, nicht im Verlauf |
| Datengröße | Begrenzung durch URL-Länge | Ohne Begrenzung (oder sehr groß) |
| Caching | Kann gecached werden | Wird nicht durch Basismittel gecached |
| Lesezeichen | Seite mit GET-Parametern kann zu Lesezeichen hinzugefügt werden | Nicht möglich (bei normalen Formular-Methoden) |
Beispiel für GET in PHP:
<?php
// Parameter 'id' aus URL holen
$userId = $_GET['id'];
echo "Benutzer-ID: " . htmlspecialchars($userId);
?>
Beispiel für POST in PHP (Verarbeitung von Formulardaten):
<?php
// Überprüfen, ob die Anfrage per POST erfolgt ist
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Daten aus dem Anfragekörper holen
$username = $_POST['username'];
$password = $_POST['password'];
// Daten verarbeiten (z.B. in Datenbank speichern)
echo "Benutzername: " . htmlspecialchars($username) . "<br>";
echo "Passwort empfangen.";
}
?>