Позволяет веб-сайтам зарегистрировать себя как возможный обработчик  для конкретных протоколов.

По соображениям безопасности, по умолчанию, веб-сайты могут зарегистрировать только обработчики протокола для себя - домен и протокол обработчика должны совпадать с текущим сайтом. Тем не менее, пользователи могут установить предпочтение в Firefox, разрешающее перекрестную обработку веб-сайтов  в настройках gecko.handlerService.allowRegisterFromDifferentHost установив true в about:config.

Расширения могут регистрировать обработчики протоколов, направленные другие сайты: см. "Смотрите также" раздел как использовать их с XPCOM.

Синтаксис

window.navigator.registerProtocolHandler(protocol, uri, title);
  • protocol это протокол нуждающийся в обработке, записанный в виде строки.
  • uri это URI обработчика в виде строки. Вы можете включить "%s", что бы показать куда вставлять  выходящие URI документа для обработки.

    Примечание: ДОЛЖНА быть http или https схема

  • title это заголовок обработчика, представленный пользователю в виде строки.

Пример

Если ваше веб-приложение находится по адресу http://www.google.co.uk, вы можете зарегистрировать обработчик протокола и привязать  обращение к нему "burger", как это:

navigator.registerProtocolHandler("burger",
                                  "http://www.google.co.uk/?uri=%s",
                                  "Burger handler");


Это создаст обработчик, который разрешает burger://ссылки, направляющие пользователя на ваше веб-приложение, вставляя burger информацию указанную в ссылке на URL. Напомним, что этот скрипт должен быть запущен с того же домена (так и слюбой странице расположенной в google.co.uk) и второе, переданный аргумент должен быть http или https схемы (в этом примере это http) .

Пользователь будет уведомлен о регистрации этого протокола, для примера смотрите на изображение ниже.

Примечание: "Регистрация службы веб-почты, как mailto-обработчик", показывает как сделать это в рамках XPCOM.

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

Specified by the WHATWG's Web Applications 1.0 working draft (HTML5).

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

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Свойство Chrome Firefox (Gecko) Internet Explorer Opera Safari
Базовая поддержка

13

Белый лист протоколов включает в себя: mailto, mms, nntp, rtsp, и webcal. Обычные протоколы должны быть с префиксом "web+".

3.0 (1.9) ? Opera 11.60 ?
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? 3.0 (3.5) ? ? ?

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

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

Внесли вклад в эту страницу: AlexAlex
Обновлялась последний раз: AlexAlex,