【まとめ】APIとは?
こんにちは。
エンジニアのイジュンです!
今回はAPIについてご紹介していきたいと思います。
最近のWebサイト構築において、Web APIが重要な役割を果たしているんです!
1. APIとは
APIとは「Application Programming Interface」の略語で、あるアプリケーションの機能を第三者が開発したソフトウェアと機能で利用できるインターフェースです。
APIの実例
APIの活用例としては、GoogleやLINE等のSNSログインサービスのほか、ショッピングサイトでよく連携しているAmazon、楽天など様々な企業で取り入れられています。
2. WebAPI
“Web API”は、Webサービスがアプリ開発者向けに公開している機能です。観光情報、交通情報、ソーシャルメディアなどさまざまなAPIがあります。
APIを利用すると、よく使う機能をAPIから呼び出すだけで使えるため、ソフトウェアの開発を省力化できます。
(例)デリバリーサービス→Google Maps APIを利用
ショッピングサイト→銀行が提供したAPIを利用
WebAPI動作時、クライアント側とサーバ側はHTTPプロトコルを通じて、リクエストとレスポンスが行われています。
WebAPIを使用しているのがクライアント側(ブラウザ・スマホなど)で、サーバ側にリクエスト発信し、CRUDの動作を要求します。
サーバ側はクライアント側の請求内容により、内部のプロセスで処理し、クライアント側にレスポンスします。
3. HTTPプロトコル
HTTPとは「HyperText Transfer Protocol」の略語で、WebサーバとWebクライアントの間でデータの送受信を行うために用いられるプロトコルです。
URL + Parameter
正確なHTTP VerbとURLを知っている前提で、正しい動詞でURLにリクエストすることができます。
HTTP規約に従って、サーバ側とクライアント側でリクエストとレスポンスを行う時に、明確に定義されているリクエストフォマード(request format)とレスポンスフォマード(response format)を利用します。
Request Format
リクエストフォマードとは、クライアント側は特定なHTTP動詞(GET・POST・PUT・DELETE)を利用し、特定のURLに請求します。
Rails 使っているRESTfulスタイルは、リクエストフォマードのひとつです。
Response Format
レスポンスフォマードとは、サーバ側で要求に対する資源に関する情報などレスポンス返す時のデータ形式で、よくある形式は:XML、JSON、Protocol Buffers、Thrift、YAMLなどがあります。
4. 最後に
現在、APIを公開するサービスはGoogleやYahoo、Amazonなどの大手企業によるものではなく、様々なAPIが公開されています。
有効活用するためにはWebの知識が必要です。
さらに、エンジニアとしてAPIを有効活用できるだけではなく、より良いAPIを開発できる技術を身に着けたいです。