Handling Invalid Enum Values
Handling Invalid Enum Values — Chinese original prompt
接口里 [字段名] 只允许 [取值列表] 这几种。请说明当前代码用 if-else 兜底到默认值会产生什么脏数据,再给出改法:显式白名单校验并返回 422、数据库层加约束、历史脏数据怎么清洗。最后讨论新增枚举值时,怎么避免 [下游系统] 因为不认识新值而出错。
Site original
Chinese original
How to use
默认值兜底会把错误藏起来,宁可报错也不要静默改写用户意图。