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

API资源未找到的响应规则及特定手机号请求的响应码判定咨询

问题1:当请求的资源未找到时,API应返回何种响应?

按照RESTful API的通用规范,这种场景下标准响应是返回404 Not Found。同时建议在响应体中携带清晰的错误描述,方便客户端快速理解问题,比如:

{
  "error": "Resource Not Found",
  "message": "The requested resource could not be located."
}

这样客户端能明确区分“资源不存在”和其他类型的请求错误,更便于后续处理。

问题2:不符合开头要求的手机号请求,该返回400还是404?

咱们先把400 Bad Request和404 Not Found的核心边界理清楚:

  • 400是客户端请求本身存在问题,比如参数格式非法、不符合API预设的业务规则,服务器不需要去执行资源查找,就能直接判定请求无效;
  • 404是请求参数合法,但对应的资源确实不存在,服务器已经完成了资源检索动作,最终没找到目标资源。

回到你的场景:手机号1234567890123虽然格式合规,但不符合API要求的“必须以999开头”的业务规则——这属于请求参数不满足API的入参要求,服务器在参数校验阶段就能直接判定请求无效,根本不需要去查询是否有对应的客户详情。所以这种情况应该返回400 Bad Request,同时在响应体里明确说明错误原因,比如:

{
  "error": "Invalid Parameter",
  "message": "Phone number must start with '999'."
}

如果是一个以999开头的手机号,但确实没有关联任何客户信息,那这时候才应该返回404 Not Found,因为参数是合法的,只是对应的资源不存在。

内容的提问来源于stack exchange,提问作者rohitt

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 15:57:38