当前位置: 首页 > wzjs >正文

大连做网站公司排行榜seo综合查询

大连做网站公司排行榜,seo综合查询,网站备案帐号密码,怎么做网站的三级目录为什么要使用错误码,直接返回一个错误信息不好么? 下面介绍一下,在程序开发中使用错误码的必要性~ 便于排查问题 想象你开了一家奶茶店,顾客下单后可能出现各种问题: 没珍珠了​​(错误码:50…

为什么要使用错误码,直接返回一个错误信息不好么?
下面介绍一下,在程序开发中使用错误码的必要性~

便于排查问题

想象你开了一家奶茶店,顾客下单后可能出现各种问题:

  • 没珍珠了​​(错误码:5001)
  • 杯子不够了​​(错误码:5002)
  • 支付失败​​(错误码:5003)

如果店员直接对顾客喊:“那个…机器坏了(错误码:500)!我也不知道为啥!”,顾客肯定一头雾水。但如果用更加具体的错误码:

  • 顾客看到 ​​“错误码 5001”​​,直接知道 “哦,没珍珠了,换椰果吧”。
  • 老板看到 ​​“错误码 5003”​​,马上检查支付系统。

避免 freestyle、方便统计

对于“用户不存在”这一错误,不同的程序员会有不同的表述,比如:

  • 程序员A写:“用户没找到”
  • 程序员B写:“用户不存在”
  • 程序员C写:“查无此人”

其实都是同一件事,但看起来像三种错误。而用错误码后就可以统一成 ​​“1001”​​,大家看到这个码,都知道是“用户不存在”。

此外,如果老板需要统计由于“用户不存在”导致的错误数量有多少时,就可以通过 “1001” 去搜。

便于多端协作

比如前端、移动端或第三方服务需要根据错误类型执行不同逻辑(如跳转登录页、展示特定提示)。就可以通过错误码约定行为:

if (errorCode == 401) {// 跳转登录页
} else if (errorCode == 403) {// 提示权限不足
}

支持国际化

方法返回错误码,再根据语言环境映射到对应的翻译文本:

// 中文环境
{ "code": 1001, "message": "用户不存在" }// 英文环境
{ "code": 1001, "message": "User not found" }

最佳实践

1.定义错误码枚举类

public enum ErrorCode {SUCCESS(0, "ok"),PARAMS_ERROR(40000, "请求参数错误"),NOT_LOGIN_ERROR(40100, "未登录"),NO_AUTH_ERROR(40101, "无权限"),NOT_FOUND_ERROR(40400, "请求数据不存在"),FORBIDDEN_ERROR(40300, "禁止访问"),SYSTEM_ERROR(50000, "系统内部异常"),OPERATION_ERROR(50001, "操作失败");/*** 状态码*/private final int code;/*** 信息*/private final String message;ErrorCode(int code, String message) {this.code = code;this.message = message;}public int getCode() {return code;}public String getMessage() {return message;}
}

2.方法返回包含错误码信息的通用返回对象

@PostMapping("/add")public BaseResponse<Long> addChart(@RequestBody ChartAddRequest chartAddRequest, HttpServletRequest request) {if (chartAddRequest == null) {throw new BusinessException(ErrorCode.PARAMS_ERROR);}Chart chart = new Chart();BeanUtils.copyProperties(chartAddRequest, chart);User loginUser = userService.getLoginUser(request);chart.setUserId(loginUser.getId());boolean result = chartService.save(chart);ThrowUtils.throwIf(!result, ErrorCode.OPERATION_ERROR);long newChartId = chart.getId();return ResultUtils.success(newChartId);}

3.全局捕获异常

@RestControllerAdvice
@Slf4j
public class GlobalExceptionHandler {// 捕获业务异常(代码编写时主动抛出)@ExceptionHandler(BusinessException.class)public BaseResponse<?> businessExceptionHandler(BusinessException e) {log.error("BusinessException", e);return ResultUtils.error(e.getCode(), e.getMessage());}// 捕获运行时异常,代码编写时未能发现的异常,比如空指针@ExceptionHandler(RuntimeException.class)public BaseResponse<?> runtimeExceptionHandler(RuntimeException e) {log.error("RuntimeException", e);return ResultUtils.error(ErrorCode.SYSTEM_ERROR, "系统错误");}
}
http://www.dtcms.com/wzjs/7325.html

相关文章:

  • 一分钟建站快速提升网站关键词排名
  • 响应式网站排名推广平台
  • wordpress模板怎么改织梦seo推广优化外包价格
  • 网站运营商查询宁波seo网页怎么优化
  • 企业网站建设需求调查中文搜索引擎网站
  • 形容网站做的好处福鼎网站优化公司
  • 做网站素材图片seo规则
  • 郑州网站建设汉狮金融网站推广圳seo公司
  • wordpress微信支付seo诊断报告
  • 一条龙网站建设哪家专业现在怎么做网络推广
  • sae wordpress 安装主题seo教程技术整站优化
  • 软装设计公司简介360优化大师官方下载最新版
  • 网站怎么做区域性优化百度总部电话
  • 网站开发步骤规划搜索引擎优化宝典
  • 做分色找工作网站保定百度推广联系电话
  • 网站托管流程搜seo
  • 上市企业网站建设广州网站外包
  • 网站要备案吗怎么做网络营销平台
  • 网站开发 免代码谷歌关键词搜索量数据查询
  • 建设网站需要哪些资质保定网站制作
  • 电商网站的付款功能自媒体营销推广方案
  • 网站开发意见书全球网站排名
  • 网站建设 三门峡查询网域名查询
  • 网站建设维护与网页设计网站关键词排名优化推广软件
  • 长沙做营销型网站公司seo流量优化
  • 思科中国网站开发案例市场营销的八个理论
  • 茶百道加盟费大概要多少鹤壁seo
  • 网站开发的进度控制计划表网站优化排名软件哪些最好
  • 网站建设推广兼职东莞市网络seo推广服务机构
  • 做本地的门户网站今日头条热点新闻