6.1 Видове заглавия
Заглавките на http заявката са всъщност служебна информация за http клиента и http сървъра. Но това е много важно и ако изобщо не ги разбирате, често ще ви отива настрани. Така че поне прочетете за тях.
Всички http заглавки могат да бъдат разделени на 4 основни групи:
# | Тип заглавка | Описание | Забележка |
---|---|---|---|
1 | Общи заглавки | Общи заглавия | Използва се в заявки и отговори |
2 | Заглавки на заявки | Заглавки на заявки | Използва се само в заявки |
3 | заглавки на отговорите | Заглавки на отговорите | Използва се само в отговорите |
4 | Заглавки на обекти | Заглавки на обекти | Придружавайте всяко съобщение |
6.2 Потребителски агент
Най-важният и популярен хедър е User-Agent . Това е специален низ, който описва кой клиент прави заявката към сървъра. Това е името на клиента.
Често сървърът леко приспособява своя отговор към заявителя. Например, ако от заявката става ясно, че тя е дошла от браузър на мобилен телефон, тогава може да се даде мобилна version на HTML pageта.
Не е необичайно за спам ботове, мениджъри за изтегляне и някои браузъри да изпращат фалшиви низове на User-Agent , за да се представят за законни клиенти. Тази ситуация е известна като подправяне на потребителски агент or подправяне на потребителски агент.
Например моят User-Agent сега изглежда така:
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:99.0) Gecko/20100101 Firefox/99.0
Съдържа информация за браузъра, операционната система и уеб двигателя на браузъра.
6.3 Тип съдържание
Второто най-популярно заглавие е Content-Type . Използва се за определяне на типа MIME на ресурса, който сървърът обслужва.
Дори в зората на Интернет видовете предавано медийно съдържание бяха стандартизирани за удобство. Те се наричат Интернет медийни типове or съкратено MimeTypes . Те попадат в 9 категории:
- приложение
- аудио
- пример
- изображение
- съобщение
- модел
- многочаст
- текст
- видео
Примери:
Категория | Тип | Описание |
---|---|---|
аудио | аудио/mp4 | Аудио файл във формат mp4 |
аудио/aac | AAC аудио файл | |
изображение | изображение/gif | gif картина |
изображение/jpeg | jpeg картина | |
изображение/png | картина png | |
текст | текст/css | CSS файл |
текст/html | HTML файл | |
видео | видео/mpeg | Видео файл във формат mpeg |
видео/webm | Видео файл във формат webm | |
видео/3gpp | Видео файл във формат 3gpp | |
приложение | приложение/x-www-form-urlencoded | Кодирани данни |
приложение/zip | Zip архив | |
приложение/javascript | JavaScript | |
приложение/xml | XML |
Обикновено сървърът знае Howви данни дава. Но ако генерирате сървърен отговор с ваш собствен code, тогава трябва да посочите типа отговор (Content-Type) на вашия сървър.
6.4 Дължина на съдържанието
Тази заглавка указва дължината на отговора на сървъра . Ако по прост начин, тогава размерът на дадения файл. Не е необходимо ръчно да задавате тази опция. Въпреки че може да бъде полезно да погледнете Howво е дал сървърът, ако по няHowва причина отговорът не дойде всички.
6.5 Приемане на codeиране
С тази заглавка клиентът може да посочи на сървъра, че поддържа различни алгоритми за компресиране на съдържание . По този начин сървърът може първо да архивира съдържанието, например с zip архив, след което да го изпрати на клиента, а клиентът може правилно да възстанови оригиналното съдържание.
Предимството на архивирането е, че колкото по-малък е файлът, толкова по-бърз е трансферът. Минуси на архивирането - допълнително натоварване на клиента и на сървъра. Архивирането има смисъл при прехвърляне на големи файлове и често няма смисъл при прехвърляне на малки.
Пример за такова заглавие:
Accept-Encoding: deflate, gzip;q=1.0, *;q=0.5
Къде deflate
и gzip
са поддържаните алгоритми за компресиране на данни и q
обозначава степента на компресиране.
GO TO FULL VERSION