Most modern web browsers may display service handler requests when you visit certain websites. Chromium-based browsers display an icon in the address bar that shows two connected squares.
The mysterious icon displays “page wants to install a service handler” or a similar message on hover. A click displays an interactive menu.
You may allow, deny or ignore the request using it. There is also an option to manage existing service handlers.
What browsers like Chrome fail to do is explain what a service handler. Most users who never encountered the term before may not know what to do with the request.
Service Handler 101
Operating systems link file types and services with applications. This can be a local installed application, say an image viewer that is used to display photos and images, but also a web service.
Web applications like Gmail, Google Calendar and many others, may act as so called Service Handlers. It is just another term for an app that will load associated content. Note that protocol handler is used as a synonym.
Mozilla describes protocol handlers in the following way on its Developer Network website:
A protocol handler is an application that knows how to handle particular types of links: for example, a mail client is a protocol handler for “mailto:” links. When the user clicks a “mailto:” link, the browser opens the application selected as the handler for the “mailto:” protocol (or offers them a choice of handlers, depending on their settings).
Google Calendar, for example, may become the service handler for all calendar links on all webpages. When you click on such a link, Google Calendar is opened. The same principle works for other services, including email, image and video editing, 3D modelling, or conferencing.
Not all web users want web services to become Service Handlers. If you use a local calendar app, you may not want Google Calendar to handle these links.
Managing Handlers in Browsers
All Chromium-based browsers, including Google Chrome, Brave, Microsoft Edge and Vivaldi, support service handlers. Mozilla’s Firefox web browser and browsers that use its source support similar functionality.
The feature is enabled by default and the browser displays the icon in the address bar whenever the webpage supports it.
A click on the icon displays the interactive menu. You may block the icon by selecting ignore or deny. It is unclear how these two differ, but ignore may be temporary.
Allow, on the other hand, makes the web app the protocol handler for the listed item(s).
Load chrome://settings/handlers in the browser’s address bar to manage existing options.
The page lists options to change the default behavior. Websites and apps may “ask to handle protocols” by default. You may switch that to “don’t allow sites to handle protocols”, if you never want to see these requests again.
All allowed, blocked or ignored websites and apps are also listed here. You may remove them from the listing to reset their status.
Closing Words
All browsers give users a choice when it comes to service handlers. The requests may be handled on a case-by-case basis, but there is also an option to disable it entirely. Which choice is best for you depends on how you use your computer and Internet services. If you, for example, use Gmail on the Web, you may want mailto links opened in Gmail. This is configured using service handlers.
Why don’t browsers agree on a common terminology?
Concerning handlers ‘protocol’ is IMO more explicit, less confusing than ‘service’ which reminds ‘Service workers’.
I don’t run Chrome-based browsers so I discover here the Chrome-equivalency named ‘Service Handlers’. Be noted that Firefox doesn’t an extra toolbar button for the purpose of handling protocols, which I personally appreciate given that IMO what is not natively included in a browser (external applications) need not to be intrusive (toolbar button) but are better suited to be found/set in the browser’s Options’ page.
Thanks for this informative article.
Good question Tom. Maybe because some are older than others, and have always used a certain term?