REST - 发送部分无效请求时要抛出的错误

Eve*_*ert 2 rest error-handling http

我正在开发一个REST API.为了简化我的问题,我有一个API,允许人们创建一个新的博客帖子.

Blogposts可以存在于类别中,类别由类别ID指定.如果用户提供不存在的category-id,哪个HTTP错误代码最合适?

404 for Not Found看起来很糟糕,所以我现在用400 Bad Request.还有更好的吗?

Vin*_*ert 8

我假设您正在回复博客文章资源上的PUT或POST请求.

因为找到了使用URI访问的资源,所以我会使用400.如果请求内容正确,则可能已修改博客帖子.

由于这是发送的查询的内容错误而不是资源的实际URI,我会坚持400错误.

但是,如果您通过PUTting或POSTing到类别将博客帖子添加到类别,则可以返回404 Not found.