RESTful Webサービス メモ
今やっている仕事の関係で、RESTful Webサービスを買ったのでそのメモ。
- 作者: Leonard Richardson,Sam Ruby,山本陽平,株式会社クイープ
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2007/12/21
- メディア: 単行本
- 購入: 25人 クリック: 842回
- この商品を含むブログ (168件) を見る
全般メモ
- RESTは、ウェブのような分散ハイパーメディアシステムのためのソフトウェアアーキテクチャのスタイルのひとつである。初めはアーキテクチャの原則と制約の集まり(後述)を指していたが、次第に、XMLやHTTPを使った簡易なウェブベースのインターフェイスのうち、WebサービスのSOAPプロトコルのような MEP(Message Exchange Pattern; SOAPノード相互のメッセージ交換のパターンを確立するための雛型)ベースの特別な抽象化をしないもののことを、大まかに意味する用語として使われるようになった。
- RPC(英: remote procedure call、リモートプロシージャコール)とは、プログラムから別のアドレス空間(通常、共有ネットワーク上の別のコンピュータ上)にあるサブルーチンや手続きを実行することを可能にする技術。
第3章 RESTfulサービスの特徴
- RESTful サービスは、リソースと呼ばれる標準HTTPオブジェクトを提供する
- 適切に設計されたRESTfulサービスでは、全てが名前のとおりに機能する
第4章 リソース指向アーキテクチャ(ROA)
- RESTを定義づける2つの原理
- リソースとは、それ自体を参照するに値するほどの重要性を持つもの
- URIは構造的でなければならず、その構造は予測可能な方法で区別される必要がある
- アドレス可能性
- アプリケーションがそのデータセットの重要な部分をリソースとして公開する場合、そのアプリケーションはアドレス可能である
- ステートレス性
- ステートレス性とは、全てのHTTPリクエストが完全に分離していることを意味する
- アプリケーション状態とリソース状態
- 前者はクライアント側で維持される状態、後者はサーバ側で維持される状態
- リソース状態は全てのクライアントで同じで、サーバに格納するのが正しい
- 統一インターフェイス
- POSTの役割
- 既存のリソースの注釈
- フォーム送信の結果などの、データ処理プロセスへのデータブロックの提供
- アペンド処理を通じたデータベースの拡張
- 安全性と冪等性
- 統一性
- すべてのサービスがHTTPのインターフェイスを同じ方法で使用することが重要