クエリ文字列トラップの克服: $.ajax を使用した JSON の送信
jQuery の $.ajax メソッドを使用する場合、データをクエリに変換する特に JSON を扱う場合、文字列はイライラする障害になる可能性があります。ただし、いくつかの簡単な調整を行うことで、実際の JSON データを簡単に送信できます。
JSON とクエリ文字列の混乱
デフォルトでは、$.ajax はすべてのデータを「dataType: 'json」を指定した場合でも、クエリ文字列。 JSON オブジェクト内の配列は特有の形式に変換されるため、これは厄介な問題になる可能性があります。
解決策: JSON をシリアル化してコンテンツ タイプを設定します
この問題を解決するには、JSON.stringify を使用して、オブジェクトを JSON 文字列にシリアル化します。さらに、サーバーが受信しているデータの種類を認識できるように、contentType を「application/json」として指定する必要があります。変更されたコードは次のとおりです。
$.ajax({ url: url, type: "POST", data: JSON.stringify(data), contentType: "application/json", complete: callback });
互換性に関する考慮事項
ほとんどの最新のブラウザは JSON オブジェクトをネイティブにサポートしていますが、レガシー ブラウザをサポートする必要がある場合は、json2 の使用を検討してください。
これらの変更を実装すると、$.ajax を介して JSON データをシームレスに送信でき、Web アプリケーションの整合性と機能が保証されます。
以上がクエリ文字列トラップを使用せずに、jQuery の $.ajax を使用して JSON データを送信するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。