仕事

パラメータとリクエストの種類

お客様からGETとPOSTの違いって何んですか?と質問されたので、回答をまとめておきます。

ブラウザを使ってるユーザーが、サーバに対して送信するリクエストは、パラメータといって住所や名前などの情報を紐付けることができます。よくあるお問合せフォームをイメージするとわかり易いですね。Webサーバは、PHPプログラムをを通してこのパラメータが引き渡されて、パラメータを元に色々な処理を行うことができます。

パラメータとして送信する方法はGETとPOSTの2種類あり、GETはページ取得(1P,2P,,,とかのリンクの事)を目的とするリクエストです。ページ取得に必要な簡単なデータ送信に利用したりする場合が多いです。パラメータはURLの末尾に付加されて、これをクリエ文字列とも表現します。POSTはブラウザからWebサーバへのデータ送信を目的とした方法で、膨大なデータ量にも対応可能です。パラメータはリクエストデータの中に入ってるので、URLに表記されることはありません。

セキュリティ上、フォームからの送信はなるべくPOSTを使います。GETで送ってしますとURLにパラメータが表示されるので、悪意あるユーザーが書き換えて偽装し、データを改ざんすることが簡単にできてしまいます。

GETは意図的に任意のURLを生成、想定してaタグに記述して、SEOを意識するテクニックもあります。重要ではないデータはGETで、と利用状況に応じて2つを使いわけています。