Заголовки: Sec-Fetch-Dest
Заголовок Sec-Fetch-Dest
Базовая поддержка Широко доступно *
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в разных версиях браузеров. Она доступна во всех браузерах с марта 2023 года.
Хотите, чтобы эта функция поддерживалась лучше? Расскажите нам почему.
* Поддержка некоторых частей этой функции может различаться.
HTTP-заголовок запроса Sec-Fetch-Dest метаданных запроса Fetch указывает назначение запроса. Это инициатор исходного запроса Fetch, то есть место, где (и способ, которым) будут использоваться полученные данные.
Это позволяет серверам определять, следует ли обрабатывать запрос, исходя из того, подходит ли он для предполагаемого использования. Например, запрос с назначением audio должен запрашивать аудиоданные, а не ресурс другого типа (например, документ с конфиденциальной информацией о пользователе).
| Тип заголовка | Заголовок запроса метаданных Fetch |
|---|---|
| Запрещённый заголовок запроса | Да (префикс Sec-) |
| Заголовок запроса из списка безопасных для CORS | Нет |
Синтаксис
Sec-Fetch-Dest: audio Sec-Fetch-Dest: audioworklet Sec-Fetch-Dest: document Sec-Fetch-Dest: embed Sec-Fetch-Dest: empty Sec-Fetch-Dest: fencedframe Sec-Fetch-Dest: font Sec-Fetch-Dest: frame Sec-Fetch-Dest: iframe Sec-Fetch-Dest: image Sec-Fetch-Dest: json Sec-Fetch-Dest: manifest Sec-Fetch-Dest: object Sec-Fetch-Dest: paintworklet Sec-Fetch-Dest: report Sec-Fetch-Dest: script Sec-Fetch-Dest: serviceworker Sec-Fetch-Dest: sharedworker Sec-Fetch-Dest: style Sec-Fetch-Dest: track Sec-Fetch-Dest: video Sec-Fetch-Dest: webidentity Sec-Fetch-Dest: worker Sec-Fetch-Dest: xslt
Серверам следует игнорировать этот заголовок, если он содержит любое другое значение.
Директивы
Примечание: Эти директивы соответствуют значениям, возвращаемым свойством Request.destination.
audio-
Назначение — аудиоданные. Они могут быть получены из HTML-тега
<audio>. audioworklet-
Назначение — данные, загружаемые для использования аудиоворклетом. Они могут быть получены в результате вызова
audioWorklet.addModule(). document-
Назначение — документ (HTML или XML), а запрос является результатом инициированной пользователем навигации верхнего уровня (например, когда пользователь нажимает ссылку).
embed-
Назначение — встроенное содержимое. Оно может быть получено из HTML-тега
<embed>. empty-
Назначение — пустая строка. Это значение используется для назначений, у которых нет собственного значения. Например:
fetch(),navigator.sendBeacon(),EventSource,XMLHttpRequest,WebSocketи т. д. fencedframe-
Назначение — изолированный фрейм.
font-
Назначение — шрифт. Он может быть получен из CSS-правила
@font-face. frame-
Назначение — фрейм. Он может быть получен из HTML-тега
<frame>. iframe-
Назначение — iframe. Он может быть получен из HTML-тега
<iframe>. image-
Назначение — изображение. Оно может быть получено из HTML-тега
<img>, SVG-элемента<image>, CSS-свойстваbackground-image, CSS-свойстваcursor, CSS-свойстваlist-style-imageи т. д. json-
Назначение — JSON. Оно может быть получено при импорте модуля из JavaScript с атрибутом
type: "json". manifest-
Назначение — манифест. Он может быть получен из HTML-элемента <link rel=manifest>.
object-
Назначение — объект. Он может быть получен из HTML-тега
<object>. paintworklet-
Назначение — ворклет отрисовки. Оно может быть получено в результате вызова
CSS.PaintWorklet.addModule(). report-
Назначение — отчёт (например, отчёт о политике безопасности содержимого).
script-
Назначение — скрипт. Он может быть получен из HTML-тега
<script>или в результате вызоваWorkerGlobalScope.importScripts(). serviceworker-
Назначение — сервис-воркер. Оно может быть получено в результате вызова
navigator.serviceWorker.register(). -
Назначение — общий воркер. Оно может быть получено из объекта
SharedWorker. style-
Назначение — таблица стилей. Она может быть получена из HTML-элемента <link rel=stylesheet> или CSS-правила
@import. track-
Назначение — текстовая дорожка HTML. Она может быть получена из HTML-тега
<track>. video-
Назначение — видеоданные. Они могут быть получены из HTML-тега
<video>. webidentity-
Назначение — конечная точка, связанная с проверкой личности пользователя. Например, она используется в API FedCM для проверки подлинности конечных точек поставщика удостоверений (IdP), предотвращая атаки CSRF.
worker-
Назначение —
Worker. xslt-
Назначение — преобразование XSLT.
Примеры
>Использование Sec-Fetch-Dest
Межсайтовый запрос, созданный элементом <img>, приведёт к запросу со следующими HTTP-заголовками (обратите внимание, что назначение — image):
Sec-Fetch-Dest: image Sec-Fetch-Mode: no-cors Sec-Fetch-Site: cross-site
Спецификации
Совместимость с браузерами
| Компьютеры | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
Sec-Fetch-Dest |
80 | 80 | 90 | 67 | 16.4 | 80 | 90 | 57 | 16.4 | 13.0 | 80 | 16.4 |
fencedframe |
126 | 126 | Нет | 112 | Нет | 126 | Нет | 83 | Нет | 28.0 | 126 | Нет |
См. также
-
Sec-Fetch-Mode,Sec-Fetch-Site,Sec-Fetch-User— заголовки запросов метаданных Fetch - Защитите ресурсы от веб-атак с помощью Fetch Metadata (web.dev)
- Песочница заголовков запросов Fetch Metadata (secmetadata.appspot.com)
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Sec-Fetch-Dest