REST API設計 - amekh/pond GitHub Wiki
Representational State Transfer(REST)
リソースはURIで表現し、リソースに対しての処理に必要な情報を
パラメタとして渡すようにする。
Method | Role |
---|---|
GET | 取得 |
POST | 作成 |
PUT | 更新 |
DELETE | 削除 |
POSTの場合、ログイン認証などで サーバで処理する際に必要な情報を渡す際も利用します。
REST準拠でないURI
ユーザ情報取得: [GET] http://hogehoge.com/user?user_id=10
ユーザ情報の更新: [POST] http://hogehoge.com/user
ユーザの投稿記事: [GET] http://hogehoge.com/post?user_id=10&post_id=921
REST準拠なURI
ユーザ情報取得: [GET] http://hogehoge.com/user/1
ユーザ情報の更新: [PUT] http://hogehoge.com/user
ユーザの投稿記事: [GET] http://hogehoge.com/user/1/post/921
APIを公開すると予想される場合は、バージョン管理します。
ユーザ情報取得: [GET] http://hogehoge.com/v1/user/1
後方互換性がない変更を行った場合、バージョンを上げてAPIを公開する。