Kā darbojas HTTP protokols?
sobes.tech AI
Atbilde no AI
HTTP (Hypertext Transfer Protocol) — hiperteksta pārraides protokols, kas tiek izmantots resursu, piemēram, tīmekļa lapu, saņemšanai. Darbojas pēc "klients-serveris" modeļa.
Klients (parasti pārlūks) nosūta pieprasījumu serverim, kas to apstrādā un nosūta atbildi.
Galvenie HTTP ziņojuma elementi:
-
Sākuma rinda: Nosaka ziņojuma veidu (pieprasījums vai atbilde) un galvenos parametrus.
- Pieprasījums: Metode (GET, POST, PUT, DELETE un citi), ceļš uz resursu, protokola versija.
- Atbilde: Protokola versija, statusa kods (200 OK, 404 Not Found, 500 Internal Server Error un citi), teksta apraksts.
GET /index.html HTTP/1.1 // Pieprasījuma sākuma rinda piemērsHTTP/1.1 200 OK // Atbildes sākuma rinda piemērs -
Galvenes (Headers): Satur metainformāciju par ziņojumu un ziņojuma ķermeni. Katra galvene ir pārstāvēta ar pāri "VārdsGalvene: Vērtība":
- Pieprasījuma galvenes: Host, User-Agent, Accept, Content-Type, Content-Length un citi.
- Atbildes galvenes: Content-Type, Content-Length, Server, Set-Cookie un citi.
Host: example.com // Galvenes Host piemērs User-Agent: Mozilla/5.0 // Galvenes User-Agent piemērs -
Tukša rinda: Atdala galvenes no ziņojuma ķermeņa.
-
Ziņojuma ķermenis (Body): Satur pārsūtāmos datus. Var nebūt dažos pieprasījumos (piemēram, GET) un atbildēs (piemēram, 204 No Content). POST vai PUT pieprasījumos ķermenis parasti satur sūtāmos datus. Atbildēs ķermenis satur pieprasīto resursu (piemēram, HTML kodu, attēlus, JSON).
<!DOCTYPE html> <html> <head> <title>Example</title> </head> <body> <h1>Hello!</h1> </body> </html>
Galvenās HTTP metodes:
| Metode | Apraksts | Lietojums |
|---|---|---|
| GET | Pieprasa resursu no norādītā URL. | Saņemt datus, nemainot servera stāvokli. |
| POST | Sūta datus apstrādei uz serveri. | Sūtot formas, augšupielādējot failus, izveidojot resursus. |
| PUT | Atjaunina vai izveido resursu pēc norādītā URL. | Atjaunināt esošus resursus. |
| DELETE | Dzēš resursu pēc norādītā URL. | Resursu dzēšana. |
| HEAD | Pieprasa resursa galvenes bez ķermeņa. | Saņemt metadatus par resursu. |
HTTP ir bez stāvokļa protokols (stateless). Katrs pieprasījums ir neatkarīgs. Stāvokļa uzturēšanai izmanto mehānismus kā cookies un sesijas.