一覧に戻る
Lv.3

Webhook

Webhook

Webサービス間で、何かが起きたときにリアルタイムでデータを送る仕組み

簡単に説明すると

Webhookは、あるシステムで特定の出来事が起きたとき、別のシステムへ自動的にデータを送る仕組みだよ。 データを受け取るためのURLを登録しておくことで、リアルタイムな通信を実現しているんだ。 定期的に情報を聞きに行く「ポーリング」とは違い、通信の無駄を省いてすぐに変化を知ることができるよ。 決済完了の通知やブログ更新の自動お知らせなど、複数のWebサービスを連携して作業を自動化するのによく使われているんだ。

名前のヒミツ

「Web(ウェブ)」と「Hook(フック)」を組み合わせた言葉だよ。 プログラミングには、何かが起きたときに別の処理を割り込ませる「フック」という仕組みがあって、それをWeb上のシステムに応用したことから名付けられたんだ。

くわしく見てみよう!

Webhookとは、あるシステムで特定のイベントが発生したときに、別のシステムへ自動的にデータを送る仕組みのことだよ。
データを受け取るためのURLをあらかじめ登録しておくことで、リアルタイムな通信を実現しているんだ。

データのやり取りで使われる「ポーリング」という方式とは、通信の方向が逆なんだよ。
ポーリングが「新しい情報はある?」と自分から定期的に聞きに行くのに対して、Webhookは「新しい情報が入ったらそっちから送ってね」と待ち構えている状態なんだ。

自分から何度も聞きに行く必要がないから、通信の無駄を省きながら、リアルタイムに近く変化を知ることができるんだね。
例えば、クレジットカードの決済が完了した瞬間に通知を受け取ったり、ブログに記事が投稿されたら自動でSNSでお知らせしたりと、いろいろなサービスの裏側で活躍しているよ。

複数のWebサービスを連携させて、面倒な作業を自動化するためによく使われる技術なんだ。