REST (Representational State Transferの略)は、コンピューターネットワーク上のリソースへのアクセスのモデルです。 この用語は、HTTPプロトコル仕様の主要著者の1人であるRoy Fielding
による博士
論文で2000年に初めて導入されました。
当時、XML-RPCはWebサービスの主要な標準でした。 本質的に、Webサービスは、DCOMやCORBAに似ていますが、デフォルトではステートレスな何らかの分散オブジェクトに要約されました。
フィールディングは、分散システムを構築するための別のモデルを提案しました。 やや簡略化した形式では、次のようになります。
- リソース-情報システムのオブジェクト。たとえば、「ユーザー」、「ウェブページ」、「通貨の見積もり」など。 リソースには、システム内で何らかの識別子があります。 たとえば、HTTPの場合、リソース識別子はURLです。
- メソッド-リソースに対して実行されるアクション。 HTTPプロトコルを介してRESTを実装する場合、4つのアクション(コマンド)が使用されます:GET、PUT、POST、DELETE。 SQLのCRUD操作で類推される場合があります。
したがって、RESTシステムのフレームワーク内での相互作用は、選択されたリソースで4つのアクションのいずれかを実行することになります。 リソースには、他のリソースへのリンクを含めることができます。これにより、システム内の接続性とナビゲーションが確保されます。
これで、RESTの簡単な紹介を終えて、
Astoriaプロジェクトに移りましょう。
Astoriaは、HTTP経由のRESTメカニズムを介してSQLサーバーにデータアクセスサービスを作成するためのツールセットです。 Astoriaを使用して作成されたサービスが
localhost / data.svcにある場合、
localhost / data.svc / Customersでクエリを実行して、Customersテーブルにアクセスします。