jQuery を使用して JSON データを送信する方法: 代わりにクエリ文字列を受信するのはなぜですか?

Susan Sarandon
リリース: 2024-11-02 10:30:30
オリジナル
130 人が閲覧しました

How to Send JSON Data with jQuery: Why Am I Receiving a Query String Instead?

jQuery を使用した JSON データ送信を理解する

Web ページとサーバー間の効率的な通信には、JSON 形式でデータを送信することが重要です。ただし、「City=Moscow&Age=25」などのフォーマットされていない方法でデータが送信される場合は、適切なリクエスト構成が欠如していることが原因である可能性があります。

提供されたコードは、jQuery のメソッドを使用して JSON データを送信しようとします。 $.ajax() メソッド。デフォルトでは、jQuery はデータをクエリ文字列に変換し、「City=Moscow&Age=25」形式になります。これを解決するには、次の手順に従います。

  1. Use JSON.stringify(): JSON.stringify().
  2. リクエスト コンテンツ タイプの設定: contentType プロパティを使用して、リクエスト コンテンツ タイプを「application/json; charset=utf-8」として指定します。これにより、データが JSON として送信されることがサーバーに通知されます。
  3. Ensure JSON Response: dataType: 'json' プロパティを設定して、サーバーからの予期される応答が JSON である必要があることを示します。 format.
修正されたコードは次のとおりです:

<code class="javascript">var arr = { City: 'Moscow', Age: 25 };
$.ajax({
    url: 'Ajax.ashx',
    type: 'POST',
    data: JSON.stringify(arr),
    contentType: 'application/json; charset=utf-8',
    dataType: 'json',
    async: false,
    success: function(msg) {
        alert(msg);
    }
});</code>
ログイン後にコピー

追加メモ:

    arr は配列ではありませんが、 JavaScript オブジェクト。配列は [] で囲まれています。
  • サーバーが HTTP プロトコルを尊重し、「Content-Type: application/json」で応答する場合、成功コールバックは自動的に JSON 応答を JavaScript オブジェクトに解析します。

以上がjQuery を使用して JSON データを送信する方法: 代わりにクエリ文字列を受信するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!