如果我的Web应用程序无法解组客户端提供的JSON,我应该返回400还是500?

时间:2015-11-24 15:24:56

标签: json http http-status-codes

我正在尝试正确使用HTTP响应代码,但我对这种情况下的返回感到有点困惑:

来自客户端的POST请求的正文应该包含我的应用程序中对象的JSON表示。假设正文是非空的且内容是JSON数据,如果json.Unmarshal返回错误(我在Go中编程,但不重要),是否保证400 Bad Request或{ {1}}?

一方面,如果它没有解码数据,因为格式错误,这是一个糟糕的请求,但另一方面,它是一个在服务器上返回错误的函数,意味着操作无法继续,因此它是内部服务器错误。从本质上讲,它是由400引起的500.所以我应该回来哪个?

0 个答案:

没有答案