RESTful、HTTPメソッドについて [ 自分用メモ ]


RESTfulとは?

RESTとは、Representational State Transferの略語。
アプリケーションの設計方法の1つで、操作の対象となるリソースをURLを使って表し、
それに対してHTTPメソッドの「GET」「POST」「DELETE」「PUT」を使って操作を行なうというもの。

RESTにおいては、情報のことを「リソース(resource)」と呼ぶ。

RESTfulとは、
URI とメソッド(GET, POST, PUT, DELETE)の関係が REST に則っていること。
※「UXに悪影響を与えない限り、原則的に」RESTfulな設計にする。

・HTTPを使ったシンプルなWebサービス
・すべてのリソースは、一意なアドレスで識別される
・特定のHTTPメソッドを使用して操作する(GET、POST、PUT、DELETEなど)
・JSON、XML、YAMLがサポートされている

これらの仕様にそって実装されたサービスが、
RESTful Webサービスと呼ばれ、推奨される。

参考サイト
第2回 RESTfulなAPIの設計を学ぼう (1/2)
http://www.atmarkit.co.jp/ait/articles/1310/23/news078.html

RESTful Rails
http://s3.amazonaws.com/ozonesoft.net_public/RESTfulRails.pdf

RESTfulの設計思想では、以下のように処理によってhttpのメソッドの使い分けをすることとされている。

・データを参照したいときは、GET
・データを新規登録したいときは、POST
・データを更新したいときは、PUT
・データを削除したいときは、DELETE

POSTとPUTの違いは、新規登録か否か、である。

参考サイト
http://sandbox-6810.blogspot.jp/2011/11/railsrestputdelete.html