フォームは、get と post の 2 つのデータ転送方法を提供します。どちらもデータを送信する方法ですが、実際の送信方法は非常に異なり、データに重大な影響を与える可能性があります。 Web コンテナーは変数値の取得を容易にするために 2 つの違いの一部を隠していますが、2 つの違いを理解しておくと、将来のプログラミングに非常に役立ちます。 フォームの get メソッドと post メソッドは、データ転送時に HTTP プロトコルの GET メソッドと POST メソッドにそれぞれ対応します。両者の主な違いは次のとおりです。 1. Get はサーバーからデータを取得するために使用され、Post はサーバーにデータを渡すために使用されます。 2. Get は、フォーム内のデータを、変数 = 値の形式で action が指す URL に追加し、両者を「?」で接続し、各変数を「&」で接続します。Post は、フォーム内のデータをフォームのデータ本体に格納し、変数と値の対応する形式で action が指す URL に渡します。 3. Get は、送信プロセス中に要求された URL にデータが配置されるため、安全ではありません。多くの既存のサーバー、プロキシ サーバー、またはユーザー エージェントは、要求された URL をログ ファイルに記録し、それをどこかに置きます。この方法では、一部の個人情報が第三者に見られる可能性があります。さらに、ユーザーは送信されたデータをブラウザ上で直接確認することもでき、一部の内部システムメッセージもユーザーに表示されます。すべての投稿操作はユーザーには見えません。 4. Get で送信されるデータ量は少なく、これは主に URL の長さの制限によるものです。一方、Post は大量のデータを送信できるため、ファイルをアップロードするときには Post のみを使用できます (もちろん、別の理由もありますが、これについては後で説明します)。 5. Get は、Form フォームのデータ セットの値を ASCII 文字に制限しますが、Post は ISO10646 文字セット全体をサポートします。 6. Get は Form のデフォルト メソッドです。 Post で送信されたデータは、エンコードを設定することで正しく中国語に変換できますが、Get で送信されたデータは変更されません。今後の手続きではこの点に注意する必要があります。 _________________________________________________________________________________________________ 1. Get メソッドは、URL 要求を通じてユーザー データを送信します。フォーム内の各フィールドの名前とその内容を文字列のペアで結び付け、http://www.mdm.com/test.asp?name=asd&password=sad のように、action 属性で指定されているプログラムの URL の後ろに配置します。ユーザーがリンクをクリックするのと同じように、データは URL に直接表示されます。Post メソッドは、HTTP ポスト メカニズムを使用して、フォーム内の各フィールドの名前とその内容を HTML ヘッダーに配置し、action 属性で指定されているプログラムで処理できるようにサーバー側に送信します。プログラムは、標準入力 (stdin) メソッドを通じてフォーム データを読み取って処理します。 2. Getメソッドは変数の値を取得するためにRequest.QueryStringを使用する必要がありますが、Postメソッドは送信されたコンテンツにアクセスするためにRequest.Formを使用します。 3. Get メソッドで送信されるデータ量は非常に少なく、通常は約 2 KB に制限されていますが、実行効率は Post メソッドよりも優れています。Post メソッドで送信されるデータ量は比較的多く、サーバーがデータを読み取るのを待ちますが、バイト制限もあります。これは、大量のデータによるサーバーへの悪意のある攻撃を回避するためです。Microsoft によると、Microsoft は Request.Form() を使用して受信できる最大データに制限を設けており、IIS 4 では 80 KB、IIS 5 では 100 KB です。 提案: 送信するデータが一度に送信できるかどうか確信が持てない場合は、Post メソッドを使用してください。 4. Get メソッドを使用してデータを送信すると、セキュリティ上の問題が発生します。たとえば、ログイン ページで Get メソッドを使用してデータを送信すると、ユーザー名とパスワードが URL に表示されます。ページがキャッシュされるか、他の人がクライアントのマシンにアクセスできる場合、履歴レコードからユーザーのアカウントとパスワードを取得できます。したがって、フォームの送信には Post メソッドを使用することをお勧めします。Post メソッドを使用して送信されたフォーム ページでよくある問題は、ページを更新するとダイアログ ボックスがポップアップ表示されることです。 提案: セキュリティ上の理由から、データの送信にはPostを使用することをお勧めします |
<<: デザイン参考 WordPressウェブサイト構築成功事例
>>: CSSはラジオをクリックして2つの画像スタイルを切り替えますが、複数のラジオのうち1つだけをチェックできます。
Flash ファイル形式: .FLV および .SWFフラッシュ ビデオ形式には、.flv と .s...
目次Tomcat8のインストールと設定方法tomcat ダウンロードTomcat マネージャーを有効...
まず、このブログのケースデモンストレーション テーブルを作成します。 create table a(...
以下のように表示されます。名前説明する文字可変(n)、varchar(n)長さ制限あり、可変長文字(...
目次1. オペレーティングシステムとは何か2. Linuxの起源3. Linuxの基本機能4. Li...
HTML onfocus イベント属性定義と使用法onfocus 属性は、要素がフォーカスを受け取っ...
URL 書き換えは、Web サイトの優先ドメインを決定するのに役立ちます。同じリソース ページの複数...
MySQL 8.0.16 以降では、パスワードの有効期限ポリシーを設定できます。今日は、この小さな知...
目次基本的な手順と使用方法行コンポーネントの分析レンダリング機能ソースコード分析Col成分の分析コン...
Web 上でフォントを使用することは、基本的なスキルであると同時に芸術でもあります。英語のフォントに...
この記事では、MySQL 8.0.15 winx64 圧縮パッケージのインストールと設定方法を参考ま...
目次1. WAFの背景2. WAFとは3. 動作原理4. WAF機能5. WAFと従来のファイアウォ...
問題/障害/シナリオ/要件Eve-ng の仮想マシン OVA のハードディスクは 38G しかないた...
この記事では、書籍管理を実装するためのVueの具体的なコードを例として紹介します。具体的な内容は次の...
目次1 はじめに2 前提条件2.1 データ型2.2 それが自身のプロパティであるかどうかを判断する ...