RESTの実像をつかむ

の記事が、JavaWorld 2006 November, pp.129-pp.139にありました。単なるHowだけではなく、そもそも論から解説されているので勉強になりました。

ここで言うところの"正しいREST的思想"にとらわれない、HTTPリクエストを用いたWebサービスのことを、RESTと区別するために「POX(Plain Old XML) over HTTP」と呼んでいるようです。なるほど。

それではこの記事で言うところの"正しいREST的思想"とは、

●クライアント/サーバに状態を持たせない(ステートレス)
 つまり、授受されるメッセージにすべての情報を含める、ということになりますね。

●一意的な識別をすべてのリソースに持たせる
 URIによって階層化された一意のアドレスを持つことにより識別する。

●リソース操作に対して統一的なインタフェースを使う
 この命令仕様としてHTTPの提供するのが自然で望ましい。

と、いうことになります。ただ、このRestだけでシステムを作るのは作り憎いことも上記定義からすぐ気がつきますね。つまり、ステーフルなWebシステムとRESTとの共存が、よりいいシステムの構築には不可欠であると思いますね。