什么时候资源未找到(404)合适?

时间:2017-05-10 12:56:41

标签: rest url httpresponse

我一直在与同事讨论是否给出了404或400(不良请求)的回应给出了网址的不同部分。

假设我们有一个提供产品的端点。但产品是分段的,取决于国家,渠道(如b2b或b2c)等等。

在像

这样的网址中
  

/ myapi / V1 / {国家} / {信道} /产品/ {PRODUCT-ID}

如果来电者给我一个不好的"产品ID"我很清楚地回应RESOURCE NOT FOUND。

但是" country&#34 ;? 我认为" country"不是当前网址提供的资源,因此响应(在#34;国家"提供的是坏的情况下)应该是BAD REQUEST。 其他人则认为整个网址就像资源的签名和一个糟糕的国家"将导致无法返回200,因此RESOURCE NOT FOUND应该是响应状态。

哪一个是核心地位?什么是正确的问题?

1 个答案:

答案 0 :(得分:1)

这绝对是404.不要将url看作一长串参数列表,而是将url视为整个标识符。在您的特定示例中,标识符不指向任何内容,但它不是无效的URL。

404是最合适的。