HTTP-заголовки для описания контента

Список часто используемых HTTP-заголовков, описывающих содержимое тела HTTP-сообщения с пояснениями.

Content-Length — размер контента в байтах.

Content-Length: 2518

Content-Encoding — способ или способы дополнительного кодирования для сжатия контента.

Content-Encoding: gzip
Content-Encoding: gzip, br, compress, deflate, identity

Content-Language — язык или языки содержимого.

Content-Language: ru
Content-Language: en-US
Content-Language: en, ru

Content-Range — диапазон части контента в байтах.

Content-Range: bytes 317990672-635981344/953972016

Заголовки «Content-Type» и «Content-Disposition»

Content-Type — медиа тип и способ передачи контента.

Content-Type: text/plain; charset=UTF-8
  • MIME-type/MIME-subtype —медиа тип (text/plain);
  • charset — кодировка контента (UTF-8);
  • boundary — разделитель для контента, состоящего из разных частей, но отправляемый одним HTTP-сообщением, не должен превышать 70 символов и заканчиваться пробельным символом (ufU9jd8h).

Кроме boundary для составного запроса используется заголовок Content-Disposition, применяемый с типом multipart/form-data.

POST /handler HTTP/1.1
Host: example.com
Content-Type: multipart/form-data; boundary=ufU9jd8h
Content-Length: 849237

--ufU9jd8h
Content-Disposition: form-data; name="username"

Devanych

--ufU9jd8h
Content-Disposition: form-data; name="image"; filename="image.png"
Content-Type: image/png

<Base64 encoded image>
--ufU9jd8h--

По-мимо отправки составных запросов, Content-Disposition используется для скачивания файлов (attachment) и показа контента (inline) в браузере.

Content-Disposition: inline
Content-Disposition: attachment
Content-Disposition: attachment; filename="image.png"

Вместе c Content-Type сервер может отправить заголовок X-Content-Type-Options со значением nosniff, который является подтверждением того, что обязателено нужно использовать медиа тип, переданный в Content-Type.

X-Content-Type-Options: nosniff

HTTP-заголовки запроса «Accept»

Заголовки, отправляемые клиентом. Для всех Accept заголовков при перечислении можно использовать вес/приоритет (;q=XXX), в порядке которого будет происходить выбор праметра для контента (text/plain;q=0.9). Если же вес не указан, то по умолчанию он равняется 1.0.

Accept — список поддерживаемых или ожидаемых клиентом медиа типов.

  • MIME-type/MIME-subtype — конкретный медиа тип (text/plain);
  • MIME-type/* — общий медиа тип без подтипа (image/*);
  • */* — соответствует любому медиа типу.
Accept: text/plain
Accept: text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8

Accept-Charset — список поддерживаемых или ожидаемых клиентом кодировок.

Accept-Charset: utf-8
Accept-Charset: utf-8, cp-1251;q=0.9

Accept-Encoding — список поддерживаемых или ожидаемых клиентом способов дополнительного кодирования для сжатия контента.

Accept-Encoding: *
Accept-Encoding: gzip
Accept-Encoding: gzip, br;q=0.9, compress;q=0.8, deflate;q=0.7, identity;q=0.6, *;q=0.5

Accept-Language — список поддерживаемых или ожидаемых клиентом языков.

Accept-Language: *
Accept-Language: ru
Accept-Language: en-US, en-GB;q=0.9
Accept-Language: ru, en;q=0.9, *;q=0.8

 Коментарии ( 0 )

Добавить комментарий

 Латинские или кириллические буквы, не меньше 3 и не больше 30 символов.
 E-mail никто не увидит.