app.Ajax = function (options) {
var XHR = function (options) {
var params = {
methods: "GET",
url : "",
timeout: 3000,
success: undefined,
err : undefined,
};
params = Object.assign(params, options);
var xhrHttp = new XMLHttpRequest();
xhrHttp.open(params.methods, params.url);
xhrHttp.timeout = params.timeout;
xhrHttp.send();
xhrHttp.onreadystatechange = function () {
if (xhrHttp.readyState === 4) {
if (xhrHttp.status === 200) {
if (app.isFunction(params.success)) {
params.success(xhrHttp.responseText);
}
} else {
if (app.isFunction(params.fail)) {
params.fail(xhrHttp.responseText);
}
}
}
};
xhrHttp.onerror = function (e) {
if (app.isFunction(params.fail)) {
params.fail(e);
}
};
xhrHttp.ontimeout = function (e) {
if (app.isFunction(params.fail)) {
params.fail(e);
}
};
return xhrHttp;
};
XHR.cancel = function (cache) {
cache[0].abort();
for (var c = 0; c < cache.length; c++) {
var xhr = cache[c];
xhr.abort();
}
return this;
};
return {
fetch : XHR,
cancel: XHR.cancel
};
};
手写原生ajax
猜你喜欢
转载自blog.csdn.net/qq_28473733/article/details/105457559
今日推荐
周排行