Intern
Milyen típusú HTTP-kérések léteznek?
sobes.tech MI
Válasz az MI-től
A HTTP-kérések fő típusai: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, TRACE, CONNECT.
A leggyakoribbak leírása:
- GET: A megadott erőforrás megjelenítését kéri. Ezzel a módszerrel a kéréseknek csak adatokat kell lekérniük.
- POST: Adatokat küld feldolgozásra egy adott erőforráshoz. Gyakori eredmény a státuszmódosítás vagy mellékhatások a szerveren.
- PUT: A cél erőforrás összes jelenlegi megjelenítését felülírja a kérés törzsében lévő adatokkal.
- DELETE: A megadott erőforrást törli.
- PATCH: Részleges módosításokat alkalmaz az erőforráson.
- HEAD: A
GET-hez hasonlóan kérdezi le a fejlécadatokat, de a válasz törzse nélkül. Metaadatok lekérésére használják. - OPTIONS: Leírja a cél erőforrás kommunikációs paramétereit.
- CONNECT: A kért kapcsolatot átalakítja egy átlátszó TCP/IP proxy-vá.
- TRACE: Visszacsatolási tesztet hajt végre a cél erőforshoz vezető úton.
A GET és POST közötti különbségek:
| Jellemző | GET | POST |
|---|---|---|
| Cél | Adatok lekérése | Adatok küldése feldolgozásra |
| Adatok továbbítása | URL paramétereken keresztül (Query String) | A kérés törzsén keresztül |
| Biztonság | Idempotens (ismételt kérések nem változtatják az állapotot) | Nem idempotens |
| Adatok láthatósága | URL-ben látható, a böngésző történetében és a szerver logjaiban tárolódik | URL-ben nem látható, nem tárolódik a böngésző történetében |
| Méret | URL hosszával korlátozott | Korlátlan (vagy nagyon nagy) |
| Gyorsítótárazás | Cachingolható | Alapvető eszközökkel nem cache-elhető |
| Kedvencek | A GET paraméterekkel oldal hozzáadható a kedvencekhez | Nem (a normál űrlapküldő módszereknél) |
PHP példák:
GET kérés példája:
<?php
// 'id' paraméter lekérése az URL-ből
$userId = $_GET['id'];
echo "Felhasználói azonosító: " . htmlspecialchars($userId);
?>
POST kérés példája (űrlapadatok feldolgozása):
<?php
// Ellenőrizze, hogy a kérés POST módszerrel érkezett-e
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Adatok lekérése a kérés törzséből
$username = $_POST['username'];
$password = $_POST['password'];
// Adatok feldolgozása (pl. adatbázisba mentés)
echo "Felhasználónév: " . htmlspecialchars($username) . "<br>";
echo "Jelszó fogadva.";
}
?>