GET と POST の比較

WBOY
WBOYオリジナル
2016-06-20 13:02:53939ブラウズ

1. Get のデータ サイズは制限されています

現在の新しいブラウザにはこの機能がありませんが、多くの古いブラウザでは URL 文字列の数が 255 に制限されていることは周知の事実です。ただし、サイトにアクセスするすべてのユーザーが新しいバージョンのブラウザを使用していることを保証することはできません。そのため、ユーザーに Web ページ上で何らかの情報を入力してもらう必要がある場合、Get メソッドを使用すると間違いなく問題が発生します。これに対し、Post メソッドではそのような制限がなく、任意のサイズのデータ​​を送信できます。

2. Get のデータ型は柔軟性がありません

Get は URL を使用してデータを送信するため、スペース文字や & などの文字を送信するのは不便です。この問題は、送信前にエンコードし、受信後にデコードすることで解決できます。

3、セキュリティ

Get では、パラメータは URL サフィックスに付加された名前と値のペアのクエリ文字列として送信されるため、これは非常に簡単です。ブラウザ履歴のクエリ。すべてのデータはテキスト モードで送信されるため、ログイン操作のパスワードは Get メソッドを使用して送信してはいけないことがわかります。逆に、Post メソッドははるかに安全です。すべての名前と値のペアは、メッセージ本文の形式で Http リクエストで送信されます。

4、速度

明らかに、Get は Post よりも高速です。

5. ブックマーク

実際には、名前と値のペアをブックマークとして保存し、フォームで直接使用することができる場合があります。しかし、これはポストでは不可能です。

6. フォームのアップロード

フォームへのファイルのアップロードは Post メソッドを使用することでのみ実現でき、Get はほぼ不可能です。

7、データ損失

サーバーが Get メソッドで送信されたデータをエンコードするときに、データが失われる可能性があります。しかしポストはそうではない。

8、送信メソッド

Get はスタックメソッドを使用してフォーム変数を送信し、Post は HEAP メソッドを使用してフォーム変数を送信します。

9、パラメータ数制限

Get は一度に最大 18 パラメータしか送信できませんが、Post にはこの制限がありません。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。