1. 程式人生 > >jquery ajax請求記錄日誌

jquery ajax請求記錄日誌

ajax請求可通過beforeSend 和complete 來進行記錄

beforSend也可打印出引數,success 和error記錄返回資料 complete記錄是否完成

$.ajax({
		type: "get",//這裡應該是post get時獲取不到setting.data
		url: "http://www.cnblogs.com/rss",
		data:{a:1,b:{c:2}},
		beforeSend: function(XMLHttpRequest,settings){
			//ShowLoading();
			console.log("aaaa");
			console.log(JSON.stringify(settings.data));
		},
		success: function(data, textStatus){
			$(".ajax.ajaxResult").html("");
		},
		complete: function(XMLHttpRequest, textStatus){
			//HideLoading();
		},
		error: function(){
			//請求出錯處理
		}
});
如果這樣打印出的將是下面的東西
a=1&b%5Bc%5D=2 

因為傳送到服務端時如果不是字串則自動轉換為字串 data轉換完稱後就這樣了,怎麼讓它不自動轉換呢?設定prosessData的值為false即可(不過該方法不好會修改傳遞引數的型別)

更好的解決辦法

var data={a:1,b:{c:2}},
$.ajax({
		type: "post",
		url: "http://www.cnblogs.com/rss",
		data:data,
		beforeSend: function(XMLHttpRequest){
			//ShowLoading();
			console.log(settings.url);
			console.log(data);
		},
		success: function(data, textStatus){
			$(".ajax.ajaxResult").html("");
		},
		complete: function(XMLHttpRequest, textStatus){
			//HideLoading();
		},
		error: function(){
			//請求出錯處理
		}
});

這樣就可以打印出物件型別的引數了 同樣可以在請求完成後success和error裡記錄服務端返回的資訊 

便於快速定位問題及分辨責任。