Junior
Aké sú rozdiely medzi metódami HEAD, GET, POST a PUT v HTTP?
sobes.tech AI
Odpoveď od AI
- HEAD: Vyžaduje hlavičky, ktoré by boli získané pomocou metódy GET, ale bez tela odpovede. Užitočné na overenie existencie zdroja alebo získanie metadát. Idempotentné a bezpečné.
- GET: Vyžaduje zobrazenie špecifikovaného zdroja. Používa sa na získanie údajov. Idempotentné a bezpečné.
- POST: Odosiela údaje na spracovanie na špecifikovaný zdroj. Údaje sú zahrnuté v tele požiadavky. Používa sa na vytvorenie nového zdroja alebo odoslanie údajov formulára. Nie je bezpečné a nie je idempotentné (opakované požiadavky môžu vytvoriť duplikáty).
- PUT: Odosiela údaje na aktualizáciu alebo vytvorenie zdroja na špecifikovanom URI. Ak zdroj neexistuje, server ho môže vytvoriť. Údaje sú zahrnuté v tele požiadavky. Idempotentné (opakované požiadavky nemenia stav servera po prvom úspešnom požiadavke). Nie je bezpečné.
Kľúčové rozdiely:
| Metóda | Účel | Telo požiadavky | Telo odpovede (zvyčajne) | Idempotentné | Bezpečné |
|---|---|---|---|---|---|
| HEAD | Získať hlavičky | Nie | Nie | Áno | Áno |
| GET | Extrahovať zdroj | Nie (zvyčajne) | Áno | Áno | Áno |
| POST | Odoslať údaje | Áno | Áno | Nie | Nie |
| PUT | Aktualizovať/vytvoriť zdroj | Áno | Áno | Áno | Nie |
Bezpečné znamená, že požiadavka nemení stav servera. Idempotentné znamená, že opakované vykonanie rovnakej požiadavky vedie k rovnakému výsledku na serveri.