Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rest 缺少父资源时选择哪个HTTP代码 我们考虑以下方法:_Rest_Http_Web Services_Response_Httpresponse - Fatal编程技术网

Rest 缺少父资源时选择哪个HTTP代码 我们考虑以下方法:

Rest 缺少父资源时选择哪个HTTP代码 我们考虑以下方法:,rest,http,web-services,response,httpresponse,Rest,Http,Web Services,Response,Httpresponse,GEThttps://server.com/resource1/{id1}/resource2/{id2}/resource3/{id3}/target/{targetId} 所以基本上我们得到了一个目标。如果targetId为targetId的目标不存在,我们将以404响应,这是正常的。但是以前的资源呢 如果resource1,resource2,resource3不存在该怎么办 又是404吗?或者它是400(但由于HTTP规范,不完全适用)。或者甚至可能是424(因为缺少依赖资源) 我知道可

GEThttps://server.com/resource1/{id1}/resource2/{id2}/resource3/{id3}/target/{targetId}

所以基本上我们得到了一个
目标。如果targetId为
targetId
的目标不存在,我们将以404响应,这是正常的。但是以前的资源呢

如果
resource1
resource2
resource3
不存在该怎么办

又是404吗?或者它是400(但由于HTTP规范,不完全适用)。或者甚至可能是424(因为缺少依赖资源)

我知道可能没有100%正确的答案。我还知道

如果由/resource1/{id1}/resource2/{id2}/resource3/{id3}/target/{targetId}标识的文档(资源)没有当前的表示形式,那么您应该返回404

由于基于id1的查找失败、基于id2的查找失败、基于id3的查找失败或基于targetId的查找失败而导致资源不存在并不重要

您可以将URI视为缓存键:此拼写是否与具有当前表示形式的资源匹配

如果要解释此特定问题,可以使用响应的消息体。但状态代码和标题是“通过网络传输文档”域中的元数据;通用组件不关心我们的实现细节