首頁  >  文章  >  web前端  >  如何使用 jQuery 發送 JSON 資料:為什麼我收到的是查詢字串?

如何使用 jQuery 發送 JSON 資料:為什麼我收到的是查詢字串?

Susan Sarandon
Susan Sarandon原創
2024-11-02 10:30:30131瀏覽

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

使用 jQuery 了解 JSON 資料傳輸

以 JSON 格式傳送資料對於網頁和伺服器之間的高效通訊至關重要。但是,如果您遇到以未格式化的方式發送數據,例如“City=Moscow&Age=25”,則可能是由於缺少正確的請求配置。

提供的程式碼嘗試使用 jQuery 傳送 JSON 資料$.ajax() 方法。預設情況下,jQuery 將資料轉換為查詢字串,從而產生「City=Moscow&Age=25」格式。要解決此問題,請按照以下步驟操作:

  1. 使用JSON.stringify(): 使用JSON.stringify() 將JavaScript 物件(arr) 轉換為JSON 字串。
  2. 設定請求內容類型:使用 contentType 屬性將請求內容類型指定為「application/json; charset=utf-8」。這通知伺服器資料正在以 JSON 形式發送。
  3. 確保JSON 回應: 設定dataType: 'json' 屬性以指示伺服器的預期回應應採用JSON 格式

這是更正後的程式碼:

<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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn