知识卡片

错误码需标准化

专业/工作 · 470.b.2

内容

API 错误码如果不提前规划,客户端只能面对混乱消息和不可预测分支。标准化错误码把失败类型、提示和处理方式变成契约。发散:错误设计是接口设计的一半,甚至更能暴露系统边界。

参考来源

- 位置:《Go语言入门到实战(共3册)》第2章《Go语言编程之旅:第2章 HTTP应用:写一个完整的博客后端》(源文件:_epub-src/text/part0007_split_000.html) - 结论依据:原文围绕“错误码的标准化处理”给出定义、机制、流程、对比或限制条件,本卡片据此提炼可迁移的语言/工程结论,并补充了边界或实践启发。 - 原始内容:误码和消息体,以便告诉客户端,这一次请求发生了什么事,以及请求失败的原因。在错误码的处理上,又延伸出一个新的问题,那就是错误码的标准化处理。如果不对错误码进行提前预判,则会引发较大的麻烦,如图 2-4 所示。 图2-4 在图2-4中,可以看到客户端分别调用了三个不同的服务端,即服务端A、服务端B和服……