Web技術の基礎
HTTPのメソッドのうち、「安全」(サーバ上の資源の状態を変えることを意図しない)ではないが、「べき等」(同じリクエストを何回送っても、1回送ったときと同じ状態になる)であるものはどれか。
- AGET
- BPOST
- CPUT
答えと解説を見る
正解:C. PUT
GETやHEADは資源を読み出すだけの安全なメソッドで、安全なメソッドは同時にべき等でもあります。PUTは指定した資源の状態を送った内容で置き換えるので、何回送っても結果は1回と同じで、べき等ですが安全ではありません。DELETEも同じくべき等です。POSTは送るたびに新しい注文や投稿を作ることがあるため一般にべき等ではなく、PATCHもべき等とは限りません。べき等なリクエストは、通信の失敗で結果が分からなかったときに、そのまま送り直しても問題が起きにくいという利点があります。
- A. GETは資源を読み出すだけなので、安全であり、べき等でもあります。
- B. POSTは送るたびに新しい資源を作ることがあり、一般に安全でもべき等でもありません。
- C. 正しい。PUTは資源を送った内容で置き換えるので、何回送っても同じ状態になります。