簡體   English   中英

如何記錄 AJAX 發布的數據?

[英]How to log AJAX posted data?

有沒有辦法記錄 AJAX 發布的 URL 和數據? 我嘗試了很多方法,但結果喜憂參半。 我感謝您的幫助。 我試過的代碼如下:

$.ajax({
  type: 'POST',
  url: 'mylink',
  data: {
    id: 123, 
    name: John
  },
  dataType: 'json',
  error: function(req, err) { 
    console.log('my data' + url + data); 
  }
});

ajax調用之前編寫console.log()

順便說一句,約翰,在數據中需要撇號( "john"

您無法從 $.ajax 調用中取回這些值,它不會創建包含該信息的對象。 所以你需要自己創造這種能力。 簡化此操作的一種方法是在實際函數調用之外定義 AJAX 選項,並將它們分配給一個變量,您可以重用該變量並記錄以下值:

var ajaxOptions = {
    type: 'POST',
    url: 'mylink',
    data: {id:123, name: "John"},
    dataType: 'json'
}
console.log('my data: ' + ajaxOptions.url + ' ' + JSON.stringify(ajaxOptions.data));
$.ajax(ajaxOptions);

該示例每次都在 AJAX 調用開始之前記錄數據。 您當然可以選擇僅在出現錯誤時才進行日志記錄,類似於您的原始版本:

$.ajax(ajaxOptions).fail(function(jqXHR, textStatus, errorThrown) {
  console.log('my data: ' + ajaxOptions.url + ' ' + JSON.stringify(ajaxOptions.data));
});

您可能還想同時考慮記錄錯誤信息...

在向數據對象添加屬性或值時,您可以在函數內部但在 ajax 之上進行 console.log

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM