chrome.mimeHandler

refresh date: 2026-09-25 robots: noindex

Описание

Используйте API chrome.mimeHandler для обработки потоков MIME-типов в сторонних расширениях.

Доступность

Chrome 151+

Типы

MimeHandlerOptions

Свойства

  • canEmbed

    Логическое значение (необязательно)

    Chrome 157+

    Может ли этот обработчик использоваться для встроенных загрузок (iframe, embed, object). По умолчанию используется значение can_embed из записи манифеста. Не действует, если для правила enabled задано значение False.

  • включено

    Логическое значение (необязательно)

    Включен ли этот обработчик. По умолчанию используется значение enabled из записи манифеста.

StreamInfo

Свойства

  • встроенный

    Логическое значение

    True, если загрузка выполнена во встроенном контексте (iframe/embed/object).

  • mimeType

    string

    MIME-тип перехваченного контента.

  • originalUrl

    string

    Исходный URL, по которому перешел пользователь.

  • responseHeaders

    Объект

    Заголовки HTTP-ответов в виде пар "ключ-значение".

  • streamUrl

    string

    URL, по которому можно получить данные потока.

  • tabId

    число

    Идентификатор вкладки, содержащей документ.

Методы

abortAndFallbackToNativeHandler()

Promise
chrome.mimeHandler.abortAndFallbackToNativeHandler(
  callback?: function,
)
: Promise<void>

Прерывает обработку текущего потока и передает контент встроенному обработчику агента пользователя. После этого вызова фрейм расширения будет удален. Вызывающие объекты не должны ожидать дальнейшего выполнения.

Параметры

  • обратный вызов

    function необязательно

    Параметр callback выглядит следующим образом:

    () => void

Возвраты

  • Promise<void>

    Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.

getMimeHandlerOptions()

Promise
chrome.mimeHandler.getMimeHandlerOptions(
  mimeType: string,
  callback?: function,
)
: Promise<MimeHandlerOptions>

Чтение параметров для MIME-типа. Каждый элемент – это значение, заданное расширением, или значение записи манифеста, если расширение его не задало.

Параметры

  • mimeType

    string

    MIME-тип, параметры которого нужно прочитать. Это должен быть MIME-тип, который расширение обрабатывает с помощью mime_types_handler.

  • обратный вызов

    function необязательно

    Параметр callback выглядит следующим образом:

    (options: MimeHandlerOptions) => void

Возвраты

  • Promise, разрешенный с параметрами для MIME-типа.

    Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.

getStreamInfo()

Promise
chrome.mimeHandler.getStreamInfo(
  callback?: function,
)
: Promise<StreamInfo>

Получает информацию о потоке для текущего контекста обработчика MIME. Должен вызываться со страницы расширения обработчика MIME.

Параметры

  • обратный вызов

    function необязательно

    Параметр callback выглядит следующим образом:

    (info: StreamInfo) => void

Возвраты

  • Promise<StreamInfo>

    Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.

setMimeHandlerOptions()

Promise
chrome.mimeHandler.setMimeHandlerOptions(
  mimeType: string,
  options: MimeHandlerOptions,
  callback?: function,
)
: Promise<void>

Задает параметры конфигурации для указанного MIME-типа. Если расширение работает в разделенном режиме инкогнито, настройки, заданные в режиме инкогнито, применяются только к нему и действуют до окончания сеанса инкогнито. Если параметр не задан в режиме инкогнито, используются значения, заданные в обычном режиме.

Параметры

  • mimeType

    string

    MIME-тип, который нужно настроить. Это должен быть MIME-тип, который расширение обрабатывает с помощью mime_types_handler.

  • Параметры

    Параметры, которые нужно изменить.

  • обратный вызов

    function необязательно

    Параметр callback выглядит следующим образом:

    () => void

Возвраты

  • Promise<void>

    Обещание выполнено, когда конфигурация задана.

    Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.