\r\n\r\n
ゲット vs ポスト
フォームデータをサーバーから要求されたURLを用いてエンコードする場合はGet、フォームデータをメッセージ本文で送信する場合はPostと呼びます。このフォームは、URLに対する追加情報がない場合に使用されます。
私たちがウェブブラウザで読んでいるHTMLページは、基本的に静的なものです。これらは静的な文書であり、私たちがウェブページと対話するときは、とにかくデータをサーバーに送り返さなければなりません。これは、フォームを使うことによって行われる。フォームを使うには、GetとPostの2つの方法がある。フォームを使うことによって、データはエンコードされてサーバーに送り返される。さて、GetとPostの正確な違いは何でしょうか?
サーバーから要求されたURLを用いてデータをエンコードした場合、HTMLの仕様ではGetと呼ばれ、データを受け取るアプリケーションによってフォームデータとURLは分離される。URLとフォームのデータを解析した後、クエリーの入力として使用する。ロングテール変数が理解できればいいんです。すべてのクエリ情報について、Getリクエストを処理している場合、URL全体をブックマークすることができます。だから、もう一度ブックマークを開くと、間違いなくクエリの結果を見ることができる。
フォームのデータがメッセージの本文に送信される場合は、Postと呼ばれます。Getと比較した場合、ユーザーのブラウザ履歴に投稿をキャッシュすることはできません。このような状況では、ページがウェブサーバーに情報を再送信しなければならなくなります。夜中によく遭遇する状況ですね。
一般に、フォームを開発する際には Get を使用することが推奨され、特定の状況でのみ Post を使用する必要があります。変数のいずれかがブラウザをクラッシュさせたり URL を長くしすぎたりする場合は、Post フォームを使用できます。しかし、アプリケーションのソースコードから使用する変数を誰でも把握することができるため、安全性を保証するものではありません。
GetとPostの主な違いをまとめると、以下のようになります。
これがGetメソッドとPostメソッドの根本的な違いです。Getリクエストは、クエスチョンマークで区切られたURLに付加されます。Postリクエストは、HTTPボディにカプセル化されているため、見ることができません。
Getリクエストの作成は比較的簡単で、Postリクエストよりもはるかに速いですが、Postリクエストはカプセル化処理に時間がかかります。
GetリクエストはURL経由で送信されるため、テキスト形式のみとなります。しかし、Postにはそのような制限はなく、バイナリデータもテキストデータも運ぶことができる。
値を持つ "Enctype "属性はPostリクエストに使用でき、GetリクエストはASCII文字のみを使用することができる。