文档中心文档中心
开发指南
开发工具
前端
开发指南
开发工具
前端
  • 开发指南
  • 全局状态码
  • 响应结果封装
  • 全局异常处理
  • 参数校验
  • SpringMVC使用LocalDateTime、LocalDate

响应结果封装

响应状态码

响应状态码借鉴http status code 统一管理,非特殊情况不需要针对所有错误或异常指定特定状态码。如前端需要针对不同错误码做不同页面跳转时需单独申请错误码。 响应状态码枚举如下

code释义说明
200处理成功
401用户认证失败登录用户名、密码错误
用户伪造token
用户没有权限
404接口地址错误
405请求方法错误HTTP Method不正确,如使用HTTP GET访问HTTP POST方法
422参数错误缺少必填参数、参数属性不正确
429限流系统限流、重复请求
500处理失败业务处理失败,msg应返回错误信息;

前端统一错误处理

以axios为例,接收response后

service.interceptors.response.use(res => {
    // 未设置状态码则默认成功状态
    const code = res.data.code || 200;
    // 获取错误信息
    const msg = errorCode[code] || res.data.msg || errorCode['default']
    if (code === 401) {
        // 未授权或鉴权失败,跳转到登录页面
    }
    else if (code === 500) {
      // 服务器处理失败,弹框提示
      ElMessage({
        message: msg,
        type: 'error'
      })
      return Promise.reject(new Error(msg))
    }
    else {
      // 200 服务器处理成功, 后续代码继续各自逻辑
      return  Promise.resolve(res.data)
    }
  },
  error => {
  }
)
上次更新:
Prev
全局状态码
Next
全局异常处理