Home > web > 「RESTful」と「なんちゃってREST」

「RESTful」と「なんちゃってREST」

  • Posted by: maeda
  • 2009年3月14日 23:07
  • web
  • このエントリーをはてなブックマークに追加 はてなブックマーク - 「RESTful」と「なんちゃってREST」

「RESTful」と「REST」の違いってなんでしょうか?
Wikipediaには、以下のような記載がありました。

-http://ja.wikipedia.org/wiki/REST
FieldingのREST原則に従うシステムは、しばしばRESTfulといわれる。

ちゃんとRESTの原則に従って実装されているシステムのことを、RESTfulと呼ぶようです。 ということはちゃんとしていないRESTもあるということです。
ちゃんとしたREST(つまりRESTful)については、Wikipediaの説明やRESTful Webサービスが詳しいです。

今現在、多数のWebAPIが国内で公開されていますが、そのほとんどがREST形式であると自称している(もしくはREST形式と一般に認知されています)。ですがそのほとんどは、HTTPプロトコルに対してXML形式の結果を返しているだけで、完全なRESTとはいえない「なんちゃってREST」であるような気がします。
例えば、Yahoo!Japanのデベロッパーネットワークには、RESTの説明として以下のような記載があります。

-http://developer.yahoo.co.jp/glossary/#qt

REST
REpresentational State Transferの略語。HTTPリクエストに対してXMLをレスポンスとして返す。Yahoo! JAPANの提供するすべてのWeb APIで利用可能です。

当時からこういった説明をするサービスが多かったこともあり、RESTといえば「HTTPリクエストに対してXMLレスポンスを返すもの」という認識が一般に広まり、普通に使用されるようになってしまった感があります。

そういった経緯のせいかどうかはわかりませんが、RESTに忠実な実装を行ったシステムのことをRESTfulと呼ぶようになり、なんとなく棲み分けができて、めでたしめだたし?となっているようです。

※そもそもRESTfulがWebAPIのアーキテクチャとしてベストかというと、そうでもないケースも多いです。RESTfulは、リソース指向的な考えに基づいたアーキテクチャなので、何かしらの処理を関数的に実行させたい場合などは、RPC(Remote Procedure Call)的に呼び出せる「なんちゃってREST」の方が適しているケースも多いように思います。

※「なんちゃってREST」なAPIについては、「POX(Plain Old Xml) over HTTP」や「XML over HTTP」と言った呼び方をする動きもありましたが、あまり一般的にはならなかったようです。

3/20:追記

RESTful Webサービスのyoheiさんからはてぶでコメントもらいました。

RESTは名詞。RESTful は形容詞

なるほど。なるほど。

Comments:0

Comment Form

Trackbacks:1

TrackBack URL for this entry
http://convivial-web.com/mt/mt-tb.cgi/137
Listed below are links to weblogs that reference
「RESTful」と「なんちゃってREST」 from convivial-weblog
[geo+web]リソース指向なgeo+webのサブクラス from Geographic/Photogrammetric/Cartographic 2009-03-16 (月) 05:54
リソース指向なgeo+webのサブクラスの定義を試みます。 convivial-weblog さんから。 RESTfulは、リソース指向的な考えに基づい...

Home > web > 「RESTful」と「なんちゃってREST」

Profile
other
あわせて読みたいブログパーツ
Feeds
track feed convivial-weblog

Return to page top