跳到主要内容

错误代码文档

文档概述

本文档详细记录了邮轮穿舱件管理系统前端页面中定义和使用的错误码、错误信息以及相应的处理建议。通过分析项目代码结构和API文档,整理出系统级的错误处理机制和用户交互中的错误反馈体系。

1. HTTP状态码错误处理

1.1 通用HTTP状态码

根据API文档分析,系统使用标准的HTTP状态码来表示请求处理结果:

状态码错误类型描述处理建议
200成功请求成功处理正常继续业务流程
201创建成功资源创建成功显示成功提示,更新界面状态
204删除成功资源删除成功,无内容返回显示删除成功提示,移除相关UI元素
400请求参数错误客户端请求参数格式错误或缺失检查请求参数格式,重新提交
401未授权用户认证失败或token无效跳转到登录页面,清除本地token
404资源不存在请求的资源不存在检查资源ID是否正确,显示"资源不存在"提示
500服务器内部错误服务器端处理异常显示系统错误提示,联系管理员

参考来源:

1.2 认证相关错误

flowchart TD
A[用户请求] --> B{Token验证}
B -->|有效| C[正常处理]
B -->|无效/过期| D[返回401错误]
D --> E[清除本地Token]
E --> F[跳转登录页面]
F --> G[重新认证]

错误处理流程:

  • 401错误:Token无效或过期时触发
  • 处理建议:自动清除本地存储的token,重定向到登录页面

参考来源:

2. 业务逻辑错误码

2.1 用户认证错误

错误场景错误码错误信息处理建议
登录失败AUTH_001"Login Failed, Invalid credentials"检查用户名密码,重新输入
Token过期AUTH_002Token自动过期自动跳转登录页面
Token无效AUTH_003Token解析失败清除缓存,重新登录

参考来源:

2.2 用户管理错误

错误场景错误码错误信息处理建议
用户已存在USER_001"Username already exists"选择其他用户名
用户不存在USER_002"User not found"检查用户ID或用户名
权限不足USER_003"Insufficient permissions"联系管理员提升权限

3. 前端错误处理机制

3.1 错误拦截器设计

sequenceDiagram
participant Frontend
participant Interceptor
participant Backend
participant ErrorHandler

Frontend->>Interceptor: 发送请求
Interceptor->>Backend: 携带Token
Backend-->>Interceptor: 返回响应/错误
alt 响应成功
Interceptor->>Frontend: 返回数据
else 认证错误(401)
Interceptor->>ErrorHandler: 处理认证错误
ErrorHandler->>Frontend: 清除Token,跳转登录
else 服务器错误(500)
Interceptor->>ErrorHandler: 处理服务器错误
ErrorHandler->>Frontend: 显示错误提示
end

错误拦截器实现:

  • 位置:src/http/index.js 中的响应拦截器
  • 功能:统一处理HTTP错误响应
  • 自动处理认证错误,跳转登录页面

参考来源:

3.2 Token管理错误

// Token验证函数错误处理
function checkAuthorizaion() {
const token = Cookies.get("token");
if (token) {
try {
const decodedToken = jwtDecode(token);
const currentTime = Date.now() / 1000;
if (decodedToken.exp > currentTime) {
return true; // Token有效
} else {
return false; // Token过期
}
} catch (error) {
return false; // Token解析失败
}
} else {
return false; // 无Token
}
}

错误类型:

  • Token过期:JWT过期时间检查失败
  • Token无效:JWT解析异常
  • 无Token:本地存储中未找到token

参考来源:

4. 错误处理最佳实践

4.1 用户界面错误提示

错误级别显示方式用户操作自动处理
轻微错误Toast提示用户确认
认证错误模态对话框跳转登录自动清除缓存
系统错误错误页面联系管理员记录错误日志

4.2 错误日志记录

系统应记录以下错误信息:

  • 错误发生时间戳
  • 错误类型和代码
  • 用户操作上下文
  • 请求参数和响应数据
  • 堆栈跟踪信息

5. 错误恢复策略

5.1 自动恢复机制

stateDiagram-v2
[*] --> NormalOperation
NormalOperation --> AuthenticationError: 401错误
AuthenticationError --> LoginPage: 自动跳转
LoginPage --> NormalOperation: 重新登录成功
NormalOperation --> ServerError: 500错误
ServerError --> RetryOperation: 重试机制
RetryOperation --> NormalOperation: 重试成功
RetryOperation --> ErrorPage: 重试失败

5.2 手动恢复操作

用户可执行的错误恢复操作:

  • 刷新页面:解决临时性错误
  • 重新登录:解决认证相关问题
  • 清除缓存:解决本地数据不一致
  • 联系支持:解决系统级问题

索引

本文档系统性地整理了邮轮穿舱件管理系统前端页面的错误处理体系,涵盖了HTTP状态码、业务逻辑错误、前端错误拦截机制等多个方面。通过统一的错误处理策略和用户友好的错误提示,提升了系统的稳定性和用户体验。

关键要点:

  1. 使用标准的HTTP状态码进行错误分类
  2. 实现统一的错误拦截器进行集中处理
  3. 针对不同错误级别提供相应的用户反馈
  4. 建立完善的错误恢复和重试机制

参考文件: