それぞれのHTTPメソッド(GET,POST,PUT,DELETE)の役割について
こんにちわ
がじぇったー (@hackmylife7) | Twitter
です。
HTTPメソッドについて扱っていきます。
HTTPメソッドの種類
HTTPのメソッドの種類は以下の図の通りです。
基本的にGET,POST,PUT,DELETEをおさえればCRUD(Create,Read,Update,Delete)の基本的なデータ操作を満たせるのでOKです。
GET
GETは指定したURIの情報を取得します。
WEBページの閲覧、画像の取得、映像の取得などの操作がGETを用いた操作になります。
サーバはGETリクエストに対して、指定されたURIに対応するデータをレスポンスとして返します。
GETメソッドはURLにパラメータが含まれます。
例えばああgoogle に検索キーワードを入れて入力すると検索語のURLは検索キーワードが含まれたものになります。(エンコードされたパラメータがURLに格納されます
POST
POSTはGETの次に利用頻度の高いメソッドです。
POSTメソッドを用いてリソースを作成することができます。
例えば、私が今書いているブログ記事の作成は「公開する」ボタンを押すとPOSTメソッドがはてなが管理しているサーバに送られ、WEBページが作成されます。
twitterやinstagramの投稿もPOSTメソッドにあたります。
POSTメソッドではパラメータはヘッダのリクエストボディに含まれます。
curlコマンドの例
curl -H "Accept: application/json" -H "Content-type: application/json" -X POST -d '{"name":"sample table"}' http://127.0.0.1:8000/api/tables/
PUT
PUTはリソースの更新と、リソースの作成機能をもちます。
リソースの更新は例えば、このブログを投稿した後、修正してアップデートする操作がそれにあたります。
また、PUTもリソースを作成することができます。
DELETE
DELETEメソッドはリソースを削除するメソッドです。
例えば記事を削除する操作などがそれにあたります。