Как объявить расширение Chrome для обработки определенной схемы URL?

Я хотел бы написать расширение, которое обрабатывает определенные URL-адреса с пользовательской схемой (myscheme://). Как мне объявить свое расширение, чтобы оно вызывалось по такому запросу и перехватывало его? (URL-адрес можно щелкнуть, набрать непосредственно в адресной строке, передать в командной строке и т. д.). Это, вероятно, вопрос новичка, но я новичок!


person Michael Spector    schedule 08.12.2011    source источник
comment
Если под передачей в командной строке вы подразумеваете запуск схемы URI вне Chrome, вы не можете сделать это только с расширением Chrome.   -  person Rudey    schedule 26.03.2015


Ответы (1)


Для этого можно использовать JavaScript API.

navigator.registerProtocolHandler("mailto",
                                  "https://www.example.com/?uri=%s",
                                  "Example Mail");
person abraham    schedule 08.12.2011
comment
Этот метод позволяет перенаправить на какой-либо URL-адрес, как его можно использовать для обработки определенного URL-адреса схемы с помощью расширения Chrome? - person Michael Spector; 08.12.2011
comment
Вы должны быть в состоянии использовать chrome-extension://uuid/scheme.html?uri=%s - person abraham; 08.12.2011
comment
Ваше предложение не работает. Обратите внимание, что я попросил глобальный обработчик, который фиксирует запросы, поступающие отовсюду: щелчок, тип адреса, командная строка и т. д. - person Michael Spector; 10.12.2011
comment
Он должен работать для всего. Я получаю странную ошибку безопасности, когда пытаюсь это сделать. В настоящее время в Chrome может быть ошибка, из-за которой он не работает. - person abraham; 13.12.2011