🌐

【Web】GETとPOSTの違いとか

2023/05/21に公開

はじめに

この記事は学習ノートです。
業務でGETとPOSTを扱ったので、内容を調べてまとめてみました!
HTTPについてまとめた記事はこちら👇
https://zenn.dev/miya_akari/articles/67a1f9b5a27f32

GETとPOSTとは

  • どちらもHTTPリクエストメソッド
  • データを取得したりサーバーに送信したりするために使用される

GETとPOSTの違い

GET

  • 「ページください〜」って感じ
  • データはヘッダーで送信されるため、送信できるデータ量に制限がある
  • データがURLバーに公開されているため、リクエストは保護されない(パスワードなどは絶対GETで送らない!!)
  • ブックマークできる(URLに値が表示されるので)

POST

  • 「このデータあげます〜」って感じ
  • データはボディで送信されるため、送信できるデータ量に制限はない
  • データがURLバーに公開されないため、リクエストは保護される(絶対安全ってわけじゃないけど!)
  • ブックマークはできない(URLに値が表示されないので)

その他のHTTPリクエストメソッド

  • GETリクエストと同じレスポンスを、レスポンス本文なしで求める
  • 「ヘッダだけちょうだい〜」って感じ

PUT

  • 対象リソースの現在の表現全体を、リクエストのペイロードで置き換える
  • 「このデータ(ファイル)あげるよ〜」って感じ

DELETE

  • 指定したリソースを削除する
  • 「このデータ消してよ〜」って感じ

CONNECT

  • 対象リソースで識別されるサーバーとの間にトンネルを確立する
  • 「プロキシサーバーさん、通してください〜」って感じ

OPTIONS

  • 対象リソースの通信オプションを示すために使用する
  • 「サーバーさん、どんなオプション持ってるか教えて〜」って感じ

TRACE

  • 対象リソースへのパスに沿ってメッセージのループバックテストを実行する
  • 「どんな経路でそっちに届いたかそのまま返して〜」って感じ

PATCH

  • リソースを部分的に変更する
  • 「ちょっとデータの一部を変えさせて〜」って感じ

おわりに

HTTPリクエストメソッドはいっぱいあるけど、GETとPOST以外はめったに出てこないらしい…😂
とりあえず、GETとPOSTの違いだけ覚えておけばよさそう!

参考

https://developer.mozilla.org/ja/docs/Web/HTTP/Methods
https://www.javatpoint.com/get-vs-post
https://www.baeldung.com/cs/http-get-vs-post
https://wa3.i-3-i.info/diff7method.html
https://wa3.i-3-i.info/word11405.html

Discussion