You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

客户端插入数据违反外键约束时应使用哪种HTTP错误状态码?

问题解答

状态码选择:返回Bad Request(HTTP 400)

  • 外键约束违反属于客户端输入错误:客户端携带的user_id不存在于关联的用户表中,不符合数据插入的前置规则,并非服务器内部逻辑故障、数据库连接异常等服务端问题,因此应返回代表客户端请求错误的400状态码,而非代表服务端内部错误的500。

错误信息处理:需替换原始SQL错误信息

  • 禁止直接返回原始SQL错误内容(ERROR: insert or update on table "books" violates foreign key constraint "books_user_id_fkey" (SQLSTATE 23503)),这类信息包含数据库内部结构细节,对客户端无意义且可能泄露系统架构信息。
  • 应返回用户友好的中文提示,例如:"错误:传入的用户ID无效,无法完成图书添加"。

内容的提问来源于stack exchange,提问作者Muhammad Fadhil Akbar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 08:40:36