扩展jQuery的方法统一处理AJAX调用过程中产生的异常错误信息

简介: 由于项目中大量的实用了.post方法,而该方法默认不对请求的异常进行处理,后期又要处理该问题。前期的解决方案是将使用.post方法,而该方法默认不对请求的异常进行处理,后期又要处理该问题。

由于项目中大量的实用了.post使.post请求都改造为$.ajax请求,但由于两个方法的实现(需要的参数)等相差很大,修改起来很麻烦!

期间尝试使用定义“AJAX 请求发生错误时执行函数($(document).ajaxError())”
的方式来解决问题,但影响范围太大,长轮询发生的错误也被捕获,导致页面一打开就弹出系统异常的对话框。

所以这里采用扩展jQuery的方法的技术来解决问题:

/* 扩展jQuery.post方法
 * 用于支持错误处理,原来使用$.post的地方只需要改为$.postEx即可,不需要做其它改动;
 * 如果需要单独处理异常,请将第四个参数设置为异常处理函数;
 */
jQuery.extend({
    postEx:function(requestUrl, sendData, successCallback, errorCallback) {
        if (typeof errorCallback === 'undefined'){
            errorCallback = ajaxErrorEx;
        }

        $.ajax({
            url: requestUrl,
            data: sendData,
            type: "post",
            cache: false,
            dataType: 'json',
            timeout: 30000,
            success: successCallback,
            error: errorCallback
        });
    }
});

统一异常处理:原来使用.post.postEx即可,不需要做其它改动;
单独处理异常:如果需要单独处理异常,请将第四个参数设置为异常处理函数;

目录
相关文章
|
9天前
|
JavaScript 前端开发 容器
AJAX载入外部JS文件到页面并让其执行的方法(附源码)
AJAX载入外部JS文件到页面并让其执行的方法(附源码)
13 0
N..
|
24天前
|
XML JSON 前端开发
jQuery实现Ajax
jQuery实现Ajax
N..
16 1
|
3月前
|
JavaScript
jQuery追加节点方法 和height方法与width方法
jQuery追加节点方法 和height方法与width方法
|
1月前
|
前端开发
AJAX发送请求方法封装和请求函数底层刨析以及axios二次封装
AJAX发送请求方法封装和请求函数底层刨析以及axios二次封装
|
1月前
|
移动开发 前端开发 安全
Ajax跨域的所有方法(最详细带使用教程!!!)
Ajax跨域的所有方法(最详细带使用教程!!!)
|
2月前
|
JavaScript 前端开发 Java
jquery ajax+spring mvc上传文件
jquery ajax+spring mvc上传文件
|
2月前
|
数据采集 Web App开发 前端开发
Python爬虫之Ajax分析方法与结果提取#6
Ajax分析方法、Ajax结果提取【2月更文挑战第20天】
36 0
Python爬虫之Ajax分析方法与结果提取#6
|
2月前
|
XML 前端开发 JavaScript
AJAX get() 和 post() 方法
AJAX(Asynchronous JavaScript and XML)是一种用于创建快速和动态网页的技术,它允许使用 JavaScript 和 XMLHttpRequest 对象在不重新加载整个页面的情况下向服务器发送请求和接收响应。jQuery 提供了几个用于 AJAX 操作的方法,包括 .ajax()、.get() 和 .post()
14 1
|
3月前
|
前端开发 JavaScript
|
3月前
|
前端开发 JavaScript
Jquery ajax捕获错误信息
Jquery ajax捕获错误信息
16 0