我正在开发一个客户机和服务器应用程序,遇到了一个有趣的问题。我们正在创建一个restful api,并使用json响应与客户机通信。在执行删除操作时,我们将返回一个带有空白响应的200 ok。我们的客户机可以得到200,但是解析json失败了。
我们完全理解失败的解析(没有什么要解析的),但我们有一个更大的问题。发送空白响应是有效的json,还是应该返回{}或其他类似的内容?谢谢。

最佳答案

从关于删除方法的HTTP/1.1 definition中:
如果响应包含
描述状态的实体,如果操作尚未完成,则202(已接受)
已颁布,或204(无内容),如果行动已颁布,但
响应不包括实体。
因此,如果您的服务器正在立即删除该项,则建议的响应为:
200 OK-返回某种状态代码(如布尔值true或表示“成功”的字符串)
204无内容-不返回任何内容,并让您的客户机在知道请求成功的情况下查找此响应,而不是尝试json解析

08-03 13:06
查看更多