asp.net core modelstate.exception jsonreaderexception将不支持的媒体类型与无效的属性类型区分开来

时间:2017-02-12 08:01:13

标签: asp.net-core json.net

让我们假设POST动作方法需要json参数,如:

{
t:25
}

案例1) - 如果我们发送类似

的内容
{
t:

然后操作应该返回 415 - 不支持的媒体类型,因为解析器将无法理解json(因为它不完整)

案例2) - 如果我们发送了类似

的内容
{
t:'124'
}

所以,发送定义为int的属性的字符串(在预期的动作模型中),我们应该返回 422 - Unprocessable Entity 作为验证问题。

但是,对于这两种情况,我们得到类型为Newtonsoft.Json.JsonReaderException的ModelState.Exception。

问题是,如何区分这两种情况?

0 个答案:

没有答案