LoginSignup
2
1

More than 5 years have passed since last update.

getとpostについて調べてみた

Posted at

いまいち理解出来ていないので、調べてみました。

概要

・getとpostはhttp通信するときの方法(メソッド)の一つ。(他にはput、patch、head、deleteなど)
・どっちもwebサーバーに情報を渡すもの。
・手紙に置き換えると、封筒の表面に全ての情報が書いてあるのがget、封筒の中の手紙にきちんと情報が書いてあるのがpost。

get

・リクエスト時にサーバへ送信するデータはリクエストURLの後に付け加えられる
形式→「URL?パラメータ名=値」、?がパラメータのはじまり、&でパラメータの切れ目、=は挟んだ左側がGETの変数名、右側が渡される値
・他人にみられたくないデータは送らない。URLで見えてしまうため
・送信できるデータ量に制限がある。(URLの長さ2048文字が送れるデータ量の限界)
・検索結果の一覧などをブックマークで保存できる
・URLなどを送信したい場合はGETを使う
・渡した値が履歴(キャッシュ)として残る
・パスワードや個人情報を渡す場合は、必ずpost。
・データーベースにアクセスするような内容は書かない(検索エンジンのクローラーがページをみにきたときにデータの追記・変更などをされないように)

post

・bodyに含めてリクエストする。そのため目で見ることが出来ない。(目に見えないだけで通信を盗聴されてしまうと見えてしまう。決して安全という訳ではない)
・履歴が残らない。
・登録するときに使う(DBに格納する時など)
・他人にみられたくないデータ(パスワードなど)を送る場合
・twitterや掲示板の投稿などで使われる

参考

「GETメソッド」と「POSTメソッド」の違い - 「分かりそう」で「分からない」
GETとPOSTの違いについて - Qiita
GETとPOSTの使い分け ついでにPUTとDELETE - Qiita
HTTPとPOSTとGET - Qiita
・書籍-「プロになるためのWeb技術入門」

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1