HTTPメソッドについて整理していきたいと思います。
HTTP Request
3つの要素で構成される
- リクエストライン
POST / HTTP/1.1
- ヘッダー
Host: localhost:3030
,User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/113.0
- ボディ
{"name":"iyo", "age":16}
リクエストライン【主要なメソッド】
- GET: リソースの取得
- POST: リソースの作成
- リクエスト成功時は201で新しいリソースのURIをLocationヘッダーに設定
- PUT: リソースの更新、作成(あれば丸ごと更新、なければ作成)
- リクエスト成功時は201で新しいリソースのURIをLocationヘッダーに設定
- または200を返す(更新時)
- PATCH: リソースの更新、作成(あれば部分更新、なければ作成)
- リクエスト成功時は200を返す
- DELETE: リソースの削除
- リクエスト成功時は200を返す
冪等性とは?
同じ操作を繰り返しても同じ結果になること
冪等性あり
- GET: 何度データを取得しても同じ
- PUT: あれば更新、なければ更新されない状態が維持される
冪等性なし
- POST: リソースの作成をした際に、複数リソースが新規作成される可能性あり
- PATCH: リソースの更新、作成(あれば更新、なければ作成)
- DELETE: リソースの削除