REST 【Representational State Transfer】

概要

REST(Representational State Transfer)とは、分散システムにおいて複数のソフトウェアを連携させるのに適した設計原則の一つ。2000年にロイ・フィールディング(Roy Fielding)氏が提唱した。狭義には、それをWebシステムに適用したソフトウェアの設計様式を指し、一般にはこの意味で用いられることがほとんどである。

一般によく使われる(本来は狭義の)RESTは、パラメータを指定して特定のURLHTTPアクセスすると、XMLJSONなどで記述されたメッセージが送られてくるようなシステム、および、そのような呼び出し規約(「RESTful API」と呼ばれる)のことを指す。

システムセッションの状態に依存せず、同じURLパラメータの組み合わせからは常に同じ結果が返されることが期待される。ただし、厳密な技術的定義が共有されているわけではなく、「SOAPRPCなどを必要としない、軽量でフラットなWebインターフェース」くらいの意味で用いられる場合が多い。

本来のREST

フィールディング氏が示した(本来の)RESTの設計原則は主として以下の4つの項目から成る。

セッションなどの状態管理をわず、やり取りされる情報はそれ自体で完結して解釈することができる」(WebではHTTP自体にはセッション管理の機構はない)、「情報を操作する命令の体系が予め定義・共有されている」(WebではHTTPメソッドに相当)、「すべての情報は汎用的な構文で一意に識別される」(URL/URIに相当)、「情報の一部として、別の状態や別の情報への参照を含めることができる(ハイパーメディア的な書式情報を表現する)」(HTMLXMLに相当)の4つである。

氏が示したのは抽象的な概念モデルで、HTTPXMLといった個別具体的な技術や要件の組み合わせを直接論じたわけではない。理論上はWeb系の技術や規格とはまったく無縁なRESTシステムもあり得る。

(2019.12.4更新)

他の辞典による解説 (外部サイト)

この記事を参照している文書など (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる