2019-04-13SHAREツイートシェアはてブLINEPocketこんにちは、ともろう(@tomorrowSLog)です。APIとWebhookの違いを調べたのでまとめます。大きな違いは一点だけ抑えたら大丈夫そう。Interface)の略称となっています。wikipedia先生にその意味を聞いてみると、APIとは、広義の意味ではソフトウェアコンポーネントが互いにやりとりするのに使用するインタフェースの仕様である。wikipediaとなっています。人とテクノロジーの間にあるようなその機能と説明書”といった感じでしょうか。視点を変えて説明すると、人が異なるソフトウェアやアプリケーションなどのテクノロジー同士を互いに会話させるために用いるもの、がAPIです。ちなみにこのAPIは基本的に、説明書通りしっかり指示(リクエスト)を出してあげないとうまく動いてくれません。APIは一般的にインターネットを用いて利用されることがほとんどなので、特にwebAPIをさすことも多いです。ちなみにwebAPIとほぼ同義であるwebサービスをwikipedia先生に聞くとこんな感じ。Webサービス(ウェブサービス)とは、HTTPなどのインターネット関連技術を応用して、SOAPと呼ばれるXML形式のプロトコルを用いメッセージの送受信を行う技術、またはそれを適用したサービス。wikipediaAPIが使われているもの一番身近なAPIの使われているものは、facebookやtwitterなどを使ったアカウント認証があります。fcebookやtwitterの系列ではないアプリケーションやサービスでも、fcebookやtwitterを使ってアカウント登録や認証ができる場合があります。ここにはAPIが用いられることで、簡単にこの機能が実装されています。mapのAPIや、メッセージをやり取りするAPI、オンライン決済のAPIなどを用いて作られています。Webhookとはwebohookとはサーバー上である特定のイベントが発生した時に、サーバー側からあなた(クライアント)側に通知してくれるようなシステムのことを指します。要求(リクエスト)なしに、特定の条件のもと動くAPIのようなものです。webhookが使われているものあるシステムで何らかのエラーが起こった時に、メールでメンションしたい時。SNSで新しいメッセージが送られた時や、あるサイトで新しいブログ記事が公開された時にメンションしたいような場合。いった常には変わらないけど、定期的に更新されるような簡単な情報のやり取りにwebhookは使われます。APIとWebhookの違いAPIはリクエストをした際に何らかの反応を返してくれますが、Webhookは事前に決められた基準を満たした際に何らかの反応を返してくれます。具体的に考えていきましょう。あなたが、あるサーバー上のデータが更新されたのを知りたいとします。APIの場合は、更新されたかということをなんどもAPIに指示を与え確認させる必要があります。更新されるまでなんども。Webhookの場合は最初に「更新されたら教えてね」という指示を与えておきます。すると更新される度に「更新があるよ!」と教えてくれます。スマホアプリの更新通知にも例えられるかもしれません。通知をオンにしている場合は、webhookを使っているような状態です。こちらからアプリを確認せずとも、更新があれば通知をしてくれます。通知をオフにしている場合は、APIを使っているような状態。いちいちアプリを起動しなければ更新を知ることはできません。まとめwebhookとAPIの違いが気になったので調べてみました。いろんな仕組みがわかっていくと楽しいですね。コメントをキャンセルメールアドレスが公開されることはありません。