プロトコルハンドラーとは?仕組みと具体例をわかりやすく解説

「メールのリンクをクリックしたら、なぜかメールアプリが自動で開いた」という経験はありませんか?
それを可能にしているのがプロトコルハンドラーという仕組みです。
この記事では、プロトコルハンドラーの意味・仕組み・具体例を、ITに詳しくない方でもわかるよう解説します。


スポンサーリンク

プロトコルハンドラーとは

プロトコルハンドラー(Protocol Handler)とは、特定のURLスキーム(プロトコル)を受け取ったとき、「どのアプリで処理するか」を決める仕組みのことです。

もう少し噛み砕いて言うと、「mailto: で始まるリンクはメールアプリで開く」「https:// で始まるリンクはブラウザで開く」という対応関係を管理しているのがプロトコルハンドラーです。

ネットワークプロトコル名を徹底解説【主要プロトコル一覧付き】でも触れているとおり、プロトコルとはコンピューター間の通信ルールのこと。
プロトコルハンドラーは、その「ルールを処理するアプリ」を指定する仕組みといえます。


身近な具体例

プロトコルハンドラーは、日常的な場面で活躍しています。

URLスキーム(プロトコル)処理するアプリの例
https://ブラウザ(Chrome・Edge・Firefoxなど)
mailto:メールアプリ(Outlookなど)
tel:電話アプリ(スマートフォン)
ftp://FTPクライアント
steam://Steamアプリ
skype:Skypeアプリ

たとえばWebページ上に mailto:info@example.com というリンクがあるとします。
これをクリックすると、ブラウザはOSに「mailto: プロトコルを処理できるアプリはどれ?」と問い合わせます。
OSはプロトコルハンドラーの設定を参照し、登録されたメールアプリを起動します。

HTTPとは?インターネットの基礎プロトコルをわかりやすく解説HTTPSとは?安全なインターネットを支える暗号化技術を徹底解説で解説している http:// https:// も、ブラウザに紐づいたプロトコルハンドラーの一種です。


プロトコルハンドラーの仕組み

Windowsの場合

Windowsでは、プロトコルとアプリの対応関係がレジストリ(HKEY_CLASSES_ROOT)に保存されています。
アプリをインストールすると、そのアプリが対応するプロトコルをレジストリに書き込む仕組みになっています。

たとえばChromeをインストールすると、https:// のハンドラーとしてChromeが登録されます。
Windowsでブラウザのデフォルト設定を変更する方法で紹介しているように、ユーザーはこの設定を後から変更することも可能です。

2種類のプロトコルハンドラー

プロトコルハンドラーには大きく2種類あります。

① デスクトップベースのプロトコルハンドラー

OSにインストールされたアプリ(メールクライアント・ブラウザ・ゲームクライアントなど)が担当します。
アプリのインストール時に自動登録されるのが一般的です。

② Webベースのプロトコルハンドラー

ウェブサービス(GmailやGoogleカレンダーなど)が特定のプロトコルを処理するハンドラーとして登録する仕組みです。
Mozilla MDNの仕様(Navigator.registerProtocolHandler)に基づいてブラウザが対応しています。

たとえばGmailをWebブラウザ上で使っている場合、Gmailが mailto: のハンドラーとして登録されると、メールリンクをクリックしたときにGmailの新規作成画面が開くようになります。


ブラウザの「プロトコルハンドラー」設定とは

ブラウザの設定に「サイトがプロトコルの既定のハンドラーとなることを求めることを許可する」という項目があることがあります。
これは、ウェブサービスが自分自身をプロトコルのハンドラーとして登録しようとするとき、それを許可するかどうかを制御する設定です。

Windowsでリンクの種類ごとに既定のアプリを設定する方法でも解説しているように、プロトコルごとの既定アプリはOS側でも管理・変更できます。


プロトコルハンドラーが使われる場面

日常的に目にする活用シーンをいくつか紹介します。

  • メールリンク: mailto: をクリックするとメールアプリが起動する
  • ゲームの起動: SteamのゲームリンクをクリックするとSteamアプリが起動する
  • オンライン会議: ZoomやTeamsの会議リンクをクリックするとアプリが起動する
  • 電話発信: スマートフォンで tel: リンクをタップすると電話アプリが起動する
  • カレンダー登録: webcal:// リンクをクリックするとカレンダーアプリが起動する

まとめ

プロトコルハンドラーとは、「このプロトコル(URLスキーム)はこのアプリで開く」という対応関係を管理する仕組みのことです。
https:// をブラウザで開き、mailto: をメールアプリで開けるのは、この仕組みがOSやブラウザに組み込まれているからです。

Webベースのプロトコルハンドラーを使えば、GmailのようなWebサービスもデスクトップアプリと同じようにプロトコルを処理できるようになります。

プロトコルの基礎についてはネットワークプロトコル名を徹底解説【主要プロトコル一覧付き】もあわせてご覧ください。


参考情報源:

コメント

タイトルとURLをコピーしました