1. ホーム
  2. jquery

[解決済み] $.ajax - dataType

2022-03-07 05:44:38

質問

とはどのような違いがあるのでしょうか?

contentType: "application/json; charset=utf-8",
dataType: "json",

vs.

contentType: "application/json",
dataType: "text",

解決方法は?

  • contentType は、HTTP ヘッダー は、特定の形式を指定してサーバーに送信します。
    例 JSONまたはXMLを送信する
  • dataType は、jQuery にどのような レスポンス を期待する。
    JSON、またはXML、またはHTMLなどを期待する。は デフォルト は、jQueryが試行錯誤するためのものです。

は、その $.ajax() のドキュメントには、これらの詳細な説明もあります。


あなたの特定のケースでは、1つ目は レスポンス であることが必要です。 UTF-8 が、2番目は気にしない。 また、1つ目は レスポンス をJavaScriptのオブジェクトとして扱いますが、2番目は文字列として扱おうとします。

ということで、1つ目はこうなります。

success: function(data) {
  // get data, e.g. data.title;
}

2つ目は

success: function(data) {
  alert("Here's lots of data, just a string: " + data);
}