3
我正在做一些REST服务,并且在执行GET请求时,我正在辩论如果在那里没有记录,我应该怎么做,例如/profile/1234
。现在,如果您尝试使用/profiles/1234
(注意配置文件中的s),它肯定会是404代码,因为找不到该网址。但是当涉及到那里没有1234
配置文件,我不知道我应该回报。我不想返回{}
,因为这可能会让人觉得有没有数据的记录。但是,如果我返回一个404错误代码,API的使用者应该如何区分这两个404之间的区别?如何判断不存在的服务或缺少记录?
我该如何成为一个负责任的API设计师,通过编程方式沟通不存在的服务和不存在的记录之间的区别?
看看http状态码的列表,看起来204可能是/ profile/1234的合适代码 – 2014-09-21 07:59:35
我不知道这件事。 204表示没有机构可以返回,是的 - 但为什么我会期待GET获得204?我预计会有200人。 – Makoto 2014-09-21 08:00:46
[有效的请求的适当REST响应代码是什么,但是数据是空的?]的可能的重复(http://stackoverflow.com/questions/11746894/what-is-the-proper-rest-response-code-for - 一个有效的请求,但一个空的数据) – Makoto 2014-09-21 08:06:43