我有一些服务,需要一些实体,需要保存/更新这个实体:
http://myhost.com/rest/entity
Run Code Online (Sandbox Code Playgroud)
我使用POST并提交JSON.在内部服务中,它检测到传递的实体不好.无效,订单传入不存在的客户等.
我该怎么回复?HttpCode.NotFound?或者其他人?你怎么回答这些事情?
Jul*_*hke 31
422无法处理的实体,在WebDAV(RFC 4918)中定义:
422(不可处理实体)状态代码表示服务器理解请求实体的内容类型(因此415(不支持的媒体类型)状态代码是不合适的),并且请求实体的语法是正确的(因此400(错误请求) )状态代码不合适)但无法处理包含的指令.例如,如果XML请求主体包含格式正确(即语法正确)但语义错误的XML指令,则可能发生此错误情况.
Ser*_*sev 25
在我们的项目中,我们执行以下操作:
{"message":"%extended error message here%"}但它确实非常主观.
此外,我建议阅读这篇关于RESTfull错误处理的博客文章 - 它描述了许多可用选项,因此您可以根据自己的喜好选择一些内容.