RESTful な API設計についての考察
ひろのです。
朝から役所です。
月曜日を避けたのは正解でかなり空いていました。
各担当の方と話をすると専門的な知識が会話の中からわかるのですが、
将来的にはロボット・人工知能に置き換わっていくのかな・・なんて考えると
少しさみしい気持ちになりました。役所に来なくても出来るようになることが
どんどん増えていくこともそうですが、、。
APIを考える上で RESTful なAPI設計とすることで
理解しやすく、保守しやすいイメージがあります。
主な部分を整理しました。
RESTは(REpresentational State Transfer) のこととなります。
URIによる名前付け
~/api/customers/0001
~/api/customers/0002
上記のように顧客1番、2番等が明確。
~/api/customers
上記で顧客全体を取得・更新・追加するようなメソッドと読み取れる。
統一したインターフェース
HTTPメソッド | 操作 |
GET | リソースを取得する |
POST | リソースを新たに追加する |
PUT | リソースを更新する |
DELETE | リソースを削除する |
上記のようにメソッドが操作と一致する。
レスポンスコードによる結果
HTTPステータスコード | Body |
200 | 取得・削除に成功した |
201 | 作成に成功した |
200 | 更新に成功した |
404 | データが存在しない |
等、レスポンスで結果がわかる。