ホームページ  >  記事  >  ウェブフロントエンド  >  Jquery AJAX POST と GET の使用法の違いの簡単な分析

Jquery AJAX POST と GET の使用法の違いの簡単な分析

巴扎黑
巴扎黑オリジナル
2017-07-03 10:33:291145ブラウズ

この記事は、Jquery の AJAX POST と GET の違いについて説明しています。詳細な概要が紹介されています。必要な方はぜひ参考にしてください。 1: GET アクセス ブラウザは、同じ URL に対して 1 つの結果しか存在しないことを意味します。同じです。URL 全体を参照します

文字列

完全一致] したがって、URL 文字列が 2 回目の訪問中に変更されない場合、ブラウザは最初の訪問の結果を直接取り出します
POST は変更された訪問とみなされます (ブラウザPOSTの送信が変わったはずです)
GETの冪等アクセスを防ぐにはURLの後に追加するだけでしょうか? +new Date();, [要するに、訪問ごとに URL 文字列が異なるようにする]この原則は、WEB ページをデザインするときにも従う必要があります

2: 1. Ajax Get と Post の違いについて話します

Getメソッド: getメソッドを使用すると、単純なデータを送信できますが、サイズは通常1KBに制限され、データはURLに付加されて送信されます(HTTPヘッダ送信)。ブラウザーは各フォーム フィールド要素を送信し、そのデータは URL パラメーターの形式でリクエスト ラインのリソース パスに追加されます。最も重要な点は、クライアントのブラウザによってキャッシュされるため、他の人がブラウザの履歴からアカウント番号やパスワードなどの顧客データを読み取ることができるということです。したがって、場合によっては、get メソッドが重大なセキュリティ問題を引き起こす可能性があります。

Postメソッド:

POSTメソッドを使用すると、ブラウザはURLアドレスのパラメータとして渡すのではなく、HTTPメッセージのエンティティコンテンツとして各フォームフィールド要素とそのデータをWebサーバーに送信します。 POST メソッドを使用して渡されるデータの量は、GET を使用して送信されるデータ量よりもはるかに大きくなります。
つまり、GET メソッドは送信するデータ量が少なく、処理効率が高く、セキュリティが低く、キャッシュされますが、POST はその逆です。

get メソッドを使用する際の注意点:
1 get リクエスト (または URL 渡しパラメーターを伴うもの) の場合、渡されたパラメーターは最初に encodeURIComponent メソッドによって処理される必要があります。例: var url = "update.php?username。 = " +encodeURIComponent(username) + "&content=" +encodeURIComponent

(content)+"&id=1" ;


Post メソッドを使用する際の注意事項:

1. Context-Type を設定します。 application/ x-www-form-urlencode へのヘッダーにより、サーバーはエンティティ内にパラメーター変数があることを確認できます。通常は、 SetRequestHeader("Context-Type", "application/x-www-form-urlencoded;") です。 XmlHttpRequest

オブジェクト
を使用します。例: xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
2. パラメーターは、名前と値が 1 対 1 で対応するキーと値のペアです。たとえば、var name=abc&sex=man&age=18 の場合、var name=update.php?
abc&sex=man&age=18 と var name=? の記述に注意してください。 abc&sex=man&age=18; 3. パラメーターは、(パラメーター) メソッドの Send にあります。 get メソッドの場合は、直接 xmlHttp.send(null);サーバー側のリクエストパラメータ

はGetとPostを区別します。 get メソッドの場合は $username = $_GET["username"]; post メソッドの場合は $username = $_POST["username"]; 理由:


1. xtmlhttp が返すデータが utf-8 の場合、クライアントページが gb2312 などのエンコードデータの場合、文字化けが発生します。 gb2312 またはその他のエンコードされたデータを使用すると文字化けが発生します。 解決策は次のとおりです。


1. クライアントが gb2312 でエンコードされている場合、サーバーとクライアントの両方で utf を使用します。エンコード

gb2312:header('Content-Type:text/html;charset=GB2312');utf8:header('Content-Type:text/html;charset=utf-8');

注:上記のメソッドに従っても文字化けした文字が返される場合は、メソッドが get であるかどうかを確認してください。get リクエスト (またはパラメータを渡す URL を伴うもの) の場合、encodeURIComponent が指定されている場合、渡されるパラメータは最初に encodeURIComponent メソッドの処理を通過する必要があります。使用しないと文字化けも発生します

以上がJquery AJAX POST と GET の使用法の違いの簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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