Intern
Ce tipuri de solicitări HTTP există?
sobes.tech AI
Răspuns de la AI
Principalele tipuri de solicitări HTTP: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, TRACE, CONNECT.
Descrierea celor mai frecvent utilizate:
- GET: Solicită afișarea unui anumit resurs. Solicitările cu această metodă trebuie să obțină doar date.
- POST: Trimite date pentru procesare către o resursă specifică. Un rezultat frecvent este schimbarea stării sau efecte secundare pe server.
- PUT: Înlocuiește toate afișările curente ale resursei țintă cu datele din corpul solicitării.
- DELETE: Șterge resursa specificată.
- PATCH: Aplică modificări parțiale resursei.
- HEAD: Solicită anteturile ca și
GET, dar fără corpul răspunsului. Se folosește pentru obținerea metadatelor. - OPTIONS: Descrie parametrii de comunicare pentru resursa țintă.
- CONNECT: Transformă conexiunea solicitată într-un proxy TCP/IP transparent.
- TRACE: Efectuează un test de feedback pe traseul către resursa țintă.
Diferențele între GET și POST:
| Caracteristică | GET | POST |
|---|---|---|
| Scop | Obține date | Trimite date pentru procesare |
| Transmiterea datelor | Prin parametrii URL (Query String) | Prin corpul solicitării |
| Securitate | Idempotent (solicitările repetate nu schimbă starea) | Nu idempotent |
| Vizibilitatea datelor | Vizibile în URL, salvate în istoricul browser-ului, loguri ale serverului | Nu vizibile în URL, nu salvate în istoricul browser-ului |
| Dimensiunea datelor | Limitată de lungimea URL-ului | Fără restricții (sau foarte mari) |
| Cache | Poate fi cache-uită | Nu este cache-uită prin mijloacele de bază |
| Semne de carte | Se poate adăuga o pagină cu parametri GET în semne de carte | Nu se poate (pentru metodele normale de trimitere a formularelor) |
Exemplu de utilizare GET în PHP:
<?php
// Obțineți parametrul 'id' din URL
$userId = $_GET['id'];
echo "ID utilizator: " . htmlspecialchars($userId);
?>
Exemplu de utilizare POST în PHP (procesarea datelor formularului):
<?php
// Verificați dacă solicitarea este prin POST
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Obțineți datele din corpul solicitării
$username = $_POST['username'];
$password = $_POST['password'];
// Procesați datele (de exemplu, salvați în bază de date)
echo "Numele de utilizator: " . htmlspecialchars($username) . "<br>";
echo "Parola a fost primită.";
}
?>