Junior
HTTP чӣ компонентҳоро дар бар мегирад?
sobes.tech AI
Ҷавоб аз AI
HTTP-талаб қуйидаги компонентлардан иборат:
-
Башланғич сатр (Request Line): Талаб тури ва манбаъни аниқлайди. У:
- HTTP усули (HTTP Method): Манбаъ устида амалга оширилиши керак бўлган ҳаракат (масалан, GET, POST, PUT, DELETE).
- Манбаъ йўли (Path): Серверда сўралган манбаъга URL йўли.
- HTTP версияси (HTTP Version): Талаб учун ишлатиладиган HTTP протоколи версияси (масалан, HTTP/1.1, HTTP/2.0).
// Башланғич сатрнинг мисоли GET /index.html HTTP/1.1 -
Талаб бошлиғлари (Request Headers): Мижоз, талаб ёки манбаъ ҳақида қўшимча маълумотлар беради. Бошлиғ параметрлари "Исм: Қиймат" форматида келтирилади. Асосий бошлиғлар:
Host: Сервер домен номи.User-Agent: Мижоз ҳақида маълумот (браузер, Операцион тизим).Accept: Мижоз қабул қилишга тайёр бўлган носитель турлари.Content-Type: Тана мазмуни носитери тури (PUT, POST усуллари учун).Content-Length: Тана мазмунининг байтлардаги узунлиги.Authorization: Автентификация учун ҳисоб-китоб маълумотлари.
// Талаб бошлиғларининг мисоллари Host: www.example.com User-Agent: Mozilla/5.0 Accept: text/html -
Бўш сатр (Empty Line): Талаб бошлиғлари ва талаб тана орасида ажратишчи. Ҳамда, агар тана бўлмаса ҳам, мажбурий.
-
Талаб тана (Request Body): Серверга юбориладиган маълумотлар, масалан, форма маълумотлари, POST/PUT талаблари учун JSON. Барча усуллар учун мавжуд эмас (масалан, GET учун йўқ).
// Талаб тана мисоли (POST/PUT учун) { "name": "John Doe", "age": 30 }
HTTP-талаб структурасини шундай тасвирлаш мумкин:
| Компонент | Тавсиф | Мажбурийлиги |
|---|---|---|
| Башланғич сатр | Усул, манбаъ йўли, HTTP версияси | Ҳаммаси |
| Талаб бошлиғлари | Талаб ёки мижоз ҳақида қўшимча маълумотлар | Мажбурий |
| Бўш сатр | Айримлаштирувчи | Ҳаммаси |
| Талаб тана | Серверга юбориладиган маълумотлар | Мажбурий |