【发布时间】:2016-01-24 09:49:49
【问题描述】:
我正在设计一个用于调查交付的 API。每隔一段时间,客户就会轮询调查并检查是否有可供该用户使用的调查。
如果调查存在,我会返回它(200 OK)。
但如果目前没有安排调查,返回 404 是否合适?
资源确实不存在,但同时404是“客户端错误”,返回感觉不对,因为没有发生错误。回复的意思是“目前没有调查。稍后再检查”。什么是合适的响应代码?
【问题讨论】:
-
如果访问不存在的资源(例如违反合同)是一个错误,则 400 可能会更好。民意调查机制感觉......奇怪。
-
是的,返回 404 状态代码和一个漂亮的页面是合适的,上面写着“目前没有调查。稍后再检查”。