--- title: If-Match slug: Web/HTTP/Headers/If-Match translation_of: Web/HTTP/Headers/If-Match original_slug: Web/HTTP/Заголовки/If-Match ---
{{HTTPSidebar}}

Заголовок HTTP-запроса If-Match делает запрос условным. Для методов {{HTTPMethod("GET")}} и {{HTTPMethod("HEAD")}} сервер отправляет запрошенный ресурс только в том случае, если он соответствует одному из перечисленных ETags. Для {{HTTPMethod("PUT")}} и других небезопасных методов он будет загружать только ресурс в этом случае.

Сравнение с хранимым {{HTTPHeader("ETag")}} использует сильный алгоритм сравнения, то есть два файла считаются одинаковыми байтами только байтом. Это ослабляется, когда префикс W/используется перед ETag.

Существует два распространенных варианта использования:

Header type {{Glossary("Request header")}}
{{Glossary("Forbidden header name")}} no

Синтаксис

If-Match: <etag_value>
If-Match: <etag_value>, <etag_value>, …

Директивы

<etag_value>
Теги объектов, однозначно представляющие запрошенные ресурсы. Они представляют собой строку символов ASCII, помещенных между двойными кавычками (например, "675af34563dc-tr34") и могут быть префиксами W/, чтобы указать, что следует использовать слабый алгоритм сравнения.
*
Звездочка представляет собой специальное значение, представляющее любой ресурс.

Примеры

If-Match: "bfc13a64729c4290ef5b2c2730249c88ca92d82d"

If-Match: W/"67ab43", "54ed21", "7892dd"

If-Match: *

Спецификации

Спецификация Название
{{RFC("7232", "If-Match", "3.1")}} Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests

Совместимость с браузером

{{Compat("http/headers/if-match")}}

Смотрите также