RESTful APIとは?
仕組みと設計について解説
RESTful Webサービスは、インターネットの仕組みを応用し、コンピュータ間のデータやり取りを効率化するための技術です。
RESTful APIとは?
最近、RESTful Webサービスという言葉を耳にする機会が多くなり、ここ数年で現れた新しい概念だと思われがちですが、実際には、RESTful APIの基礎となる概念はインターネットと同じくらい前から存在しており、その観点から理解するのが最もわかりやすいかもしれません。
RESTful APIとは何かについて説明する前に、なぜRESTful APIが重要なのかについて考えてみましょう。コンピュータが単一の言語でできたネットワークを介してやり取りできるようにするための方法が数百種類も生み出されてきました。方法、つまり「プロトコル」の進化によって、コンピュータ通信における標準的なプロトコルの組合せ(スタック)が定着するようになりました。プロトコルスタックの最上位には、アプリケーション層とプレゼンテーション層があり、ここでビジネスロジックとそれによって生じるデータのやり取りが行われます。
RESTもこのスタックに含まれています。交換されるデータは人間にとっても理解しやすいと同時に、コンピュータにとって効率的になっています。同じ場所にある他の技術としてはSOAPがありますが、データ量が多く、より計算能力を必要とするため、リソースに制約のあるモバイル環境にはあまり適していません。他にJMS(Javaアプリケーション専用)、XML-RPC(SOAPと同じような問題を抱えており、標準化もされていない)などがあります。
RESTはインターネットそのものの仕組みに乗っており、より重量級のプロトコルにつきものの不都合なしに最小限のデータをやり取りできます。これにより、プログラマーは、不安定なネットワークであっても、また計算能力が限られた環境であっても、API経由で公開されたデータにアクセスしたり操作したりするプログラムを、より迅速に構築することができます。
RESTの動作は、ブラウザでのウェブサイトとほぼ同じです。リソースはURLを通じてプログラムに公開されており、プログラムはそのURLにアクセスして、リソースに関するデータを受け取ります。これは、ブラウザにURLを入力してウェブページを取得する仕組みとよく似ています。正しく設計されたRESTful APIにおいては、アクセスするプログラムが辿れるような追加のリンクも書かれています。これらリンクは、追加の情報を要求する(新しいページに訪れるためにリンクをクリックするのと似ています)ものであったり、またリソースを更新する(ウェブサイトのフォーム入力に似ています)ものであったりします。
RESTの強みは柔軟性ですが、弱点は標準化が弱いことです。開発者はRESTにデータ連携方法を記述できますが、データの見え方を記述することができません。ネットにアクセスするモバイル機器はますます増えていますが、RESTが真に標準化されるには、いましばらくかかると考えられています。
関連製品
-
TIBCO
Cloud™ IntegrationSaaSからオンプレミスまで、企業のあらゆるビジネスアプリケーションをリアルタイムかつ活用可能な状態で連携させるアプリケーション統合スイート詳しく見る