Переклад не закінчено. Будь ласка, допоможіть перекласти цю статтю з англійської.

If-Match HTTP заголовок запиту робить запит умовним. Для GET і HEAD методів, сервер поверне запитаний ресурс тільки якщо співпадає обидва ETags. Для методу PUT чи інших небезпечних методів, виконається тільки завантаження файлу.

Порівняння коду ETag може використовувати суворий алгоритм порівняння, мається на увазі повна перевірка байт в байт. Ця функція використовує  W/ префікс на початку ETag.

Існує два загальних випадки використання: 

  • Для GET і HEAD методів, використовується з додатковим Range заголовком, це гарантує що усі ranges запити надходять  з того самого джерела. В іншому випадку буде повернуто статус 416 (Range Not Satisfiable).
  • Для інших випадків, і частково для PUT, If-Match можуть бути використані порівняння наявності файлу. В такому випадку можно дізнатись чи якісь зміни ресурсу, які користувач намагається завантажити, не змінено з того часу як вони були розташовані. Якщо запит не буде виконано, повернеться статус 412 (Precondition Failed).
Тип заголовку Request header
Forbidden header name Ні

Синтаксис

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: *

Стандарт

Specification Title
RFC 7232, section 3.1: If-Match Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests

Сумісність з оглядачами

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
Basic support
ExperimentalDeprecatedNon-standard
Chrome Full support YesEdge Full support YesFirefox Full support YesIE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support YesOpera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes

Legend

Full support  
Full support
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.
Deprecated. Not for use in new websites.
Deprecated. Not for use in new websites.

Дивись також

Мітки документа й учасники

Зробили внесок у цю сторінку: cloudgnome
Востаннє оновлена: cloudgnome,