【发布时间】:2012-09-07 10:35:28
【问题描述】:
返回成功 JSON、失败 JSON 和错误 JSON 的标准格式应该是什么?我访问了许多所谓的 RESTful API,但几乎都有自己的方式来返回成功、失败和错误 JSON?是否有任何推荐的 JSON 格式应该遵循/参考?
谢谢
【问题讨论】:
-
您的系统有哪些故障和错误情况?
-
验证失败就是失败。所有 5xx 都是错误。
返回成功 JSON、失败 JSON 和错误 JSON 的标准格式应该是什么?我访问了许多所谓的 RESTful API,但几乎都有自己的方式来返回成功、失败和错误 JSON?是否有任何推荐的 JSON 格式应该遵循/参考?
谢谢
【问题讨论】:
好问题。 REST 确实设置了一些约定,但与 GET 或 PUT HTML 不同,其中至少有一个用于发送标签名称的约定,用于 JSON 的词汇表几乎没有......我相信任何真正有用的长期使用将需要开发超出基本事务行为的正式词汇表,无论是 HTML、XMPP 还是 JSON 方言(例如,在 XMPP 中,与单独说 WebSockets 不同,您可以开发知道如何处理任何 Pubsub 服务器的订阅和发布的客户端) .
【讨论】:
GET 或 PUT "HTML" 发送的“标签名称”是指 HTTP 状态代码吗?
<html>、<body>等,在消息内容中还有一些固定的词汇一起发送。
要表示成功、错误或任何其他状态,您应该使用标准的 http 状态代码。 如果出现错误,您还可以返回包含代码、严重性和消息等内容的 json。
【讨论】:
您应该按照HTTP Status Codes 的说明进行操作。最好让所有 REST 失败/错误响应包含一些常见字段,例如 errorCode 和 errorMessage 来描述您发回的状态。
{
"apiStatus":{
"errorCode":"validation.error.invalidId",
"errorMessage":"The Id entered is not valid"
}
"yourContentIfany": ....
}
【讨论】: