一、什麼是Ajaxsetup?
Ajaxsetup是jQuery Ajax請求函數中的全局處理函數。他可以用來在所有Ajax操作前設置Ajax默認狀態,例如:默認的請求方式,全局的回調函數等等。
二、Ajaxsetup的語法
$.ajaxSetup({
url: "test.html", //默認的URL
global: true, //是否觸發全局Ajax事件
type: "POST", //默認請求方式
contentType: "application/x-www-form-urlencoded;charset=utf-8", //默認請求內容類型
processData: true, //是否自動將數據轉換為查詢字元串
data: { //默認請求參數
id: 1,
name: "John"
},
success: function(data){ //默認的回調函數
console.log(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown){ //默認的錯誤回調函數
//錯誤信息處理
}
});
三、Ajaxsetup的作用
1. 默認的URL設置
通過ajaxSetup()全局設置默認的URL,這樣在後面的Ajax請求中可以省略url參數,從而簡化代碼。
$.ajaxSetup({
url: "http://localhost:8080/"
});
$.ajax({
type: "POST",
data: {
username: "admin",
password: "123456"
},
success: function(responseData) {
console.log(responseData);
}
});
2. 請求方式設置
通過ajaxSetup()全局設置默認的請求方式,這樣在後面的Ajax請求中可以省略type參數,從而簡化代碼。
$.ajaxSetup({
type: "POST"
});
$.ajax({
url: "http://localhost:8080/login",
data: {
username: "admin",
password: "123456"
},
success: function(responseData) {
console.log(responseData);
}
});
3. 請求參數設置
通過ajaxSetup()全局設置默認的請求參數,這樣在後面的Ajax請求中可以省略data參數,從而簡化代碼。
$.ajaxSetup({
data: {
token: "abcd1234"
}
});
$.ajax({
url: "http://localhost:8080/getUserInfo",
success: function(responseData) {
console.log(responseData);
}
});
4. 回調函數設置
通過ajaxSetup()全局設置默認的回調函數,這樣在後面的Ajax請求中可以省略success和error參數,從而簡化代碼。
$.ajaxSetup({
success: function(responseData) {
console.log(responseData);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log(textStatus + ":" + errorThrown);
}
});
$.ajax({
url: "http://localhost:8080/getUserInfo"
});
5. 響應數據類型設置
通過ajaxSetup()設置默認的響應數據類型,這樣在後面的Ajax請求中返回的響應數據類型就是指定的類型。
$.ajaxSetup({
dataType: "json"
});
$.ajax({
url: "http://localhost:8080/getUserInfo",
success: function(jsonData) {
console.log(jsonData);
}
});
四、Ajaxsetup的注意事項
1. 全局設置需要謹慎
雖然通過Ajaxsetup的全局設置可以簡化代碼,但是需要謹慎使用。因為這樣做會影響到所有的Ajax請求,可能會引起一些意外的問題。
2. 設置優先順序問題
如果在某個Ajax請求中,設置了某項默認設置的值,那麼這個請求會使用最新設置的值,而不會使用全局設置的值。
$.ajaxSetup({
url: "http://localhost:8080/"
});
$.ajax({
url: "http://localhost:8000/login",
success: function(responseData) {
console.log(responseData);
}
});
3. 動態修改設置的值
可以通過ajaxSetup()動態修改某個默認設置的值。
$.ajaxSetup({
url: "http://localhost:8080/"
});
$.ajaxSetup({
url: "http://localhost:8000/"
});
$.ajax({
success: function(responseData) {
console.log(responseData);
}
});
五、Ajaxsetup總結
Ajaxsetup是jQuery Ajax請求函數中的全局處理函數。通過Ajaxsetup可以設置全局默認值,從而簡化代碼。但是需要注意全局設置中的優先順序問題,以及動態修改設置的值。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/181513.html
微信掃一掃
支付寶掃一掃