1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > Ajax设置超时时间 Ajax请求延迟提示

Ajax设置超时时间 Ajax请求延迟提示

时间:2019-11-24 06:54:28

相关推荐

Ajax设置超时时间 Ajax请求延迟提示

Ajax参数API参考:/jquery/ajax_ajax.asp

方式一

设置时间超过,断开请求连接

/*** ajax接口----------------------------------------------------------------------------* @param url 请求路径* @param data 请求参数* @param type 请求方式* @param callbak 成功回调* @param dataType 返回格式类型* @returns*/function getAjax(url, data, type, callbak, dataType){var ajaxObj = $.ajax({url: url, // 请求的URLtimeout: 1000*10, // 超时时间设置,单位毫秒type : type || 'get', // 请求方式,get或postdata: data, // 请求所传参数,json格式dataType: dataType || 'json',// 返回的数据格式success: function(res){// 请求成功的回调函数if(callbak){// 回调返回值callbak(res);}},complete: function(XMLHttpRequest, status){// 请求完成后最终执行参数if(status == 'timeout'){// 超时, status 还有 success, error等值的情况ajaxObj.abort(); // 关闭ajax请求if(callbak){// 回调提示callbak({success: false, msg: "操作失败,接口请求超时!"});}}else if(status == 'error'){// 超时, status 还有 success, error等值的情况ajaxObj.abort(); // 关闭ajax请求if(callbak){// 回调提示callbak({success: false, msg: "操作失败,接口请求错误!"});}}}});}

方式二

请求延迟提示,非断开连接

var AJAX={contentType:{JSON:"application/json;charset=UTF-8",FORM:"application/x-www-form-urlencoded"}}/*** ajax请求封装函数-----------------------------------------------------------------------* * @param d 请求参数对象*/function ajax(d) {layui.use("layer", function () {var layer = layui.layer, index;$.ajax({url: (function () {// 使用立即执行函数if (d.url.indexOf("?") != -1) {return d.url + "&_=" + $.now()} else {return d.url + "?_=" + $.now()}})(),type: d.type || "GET",dataType: d.dataType || "JSON",data: (function () {if (d.isJSON !== undefined && d.isJSON) {return JSON.stringify(d.params) || {}}return d.params || {}})(),async: d.async || true,beforeSend: d.beforeSend || function () {// 发送请求index = layer.load(1, {time: 10 * 1000, shade: [0.01, '#ffffff']}, function () {console.log("服务请求延迟过大...当前超时时间为10S");});},contentType: d.contentType || AJAX.contentType.JSON,success: function (r) {// 请求成功d.success.call(this, r);},error: function (e) {// 请求错误let json = JSON.parse(e.responseText);if (json.success){d.success.call(this, json);}else {layer.msg("请求异常!");}if (index != undefined) {layer.close(index);}},complete: plete || function () {// 请求完成if (index != undefined) {layer.close(index);}}})});}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。