我正在尝试正确使用HTTP响应代码,但我对这种情况下的返回感到有点困惑:
来自客户端的POST请求的正文应该包含我的应用程序中对象的JSON表示。假设正文是非空的且内容是JSON数据,如果json.Unmarshal
返回错误(我在Go中编程,但不重要),是否保证400 Bad Request
或{ {1}}?
一方面,如果它没有解码数据,因为格式错误,这是一个糟糕的请求,但另一方面,它是一个在服务器上返回错误的函数,意味着操作无法继续,因此它是内部服务器错误。从本质上讲,它是由400引起的500.所以我应该回来哪个?