/ javaScript

axios -- 5:error 统一的错误处理

console.info

该系类文章旨在研究 axios 的实现。在研究源码的基础上,去理解 AXISO 是如何实现 AJAX 请求并更好的去使用这个库。

对应文件

  1. lib/core/enhanceError.js 用于添加错误信息
  2. lib/core/createError.js 用于创建错误对象

createError

function createError(message, config, code, response) {
    // 新建 Error 对象
    var error = new Error(message);
    return enhanceError(error, config, code, response);
}

enhanceError

function enhanceError(error, config, code, response) {
    // 进一步描述错误信息,以及出错的 response
    error.config = config;
    if (code) {
        error.code = code;
    }
    error.response = response;
    return error;
};