.NET Core 2.1 API Post Controller返回无效输入

时间:2018-09-22 04:56:45

标签: c# asp.net-core asp.net-core-mvc

我有这个控制器

[AllowAnonymous]
[HttpPost("Authenticate")]
public ActionResult Authenticate([FromBody]LoginDTO Input)
{
    return Ok(Input);
}

LoginDTO是这个

public class LoginDTO
{
    [Required]
    [EmailAddress]
    public string Email { get; set; }

    [Required]
    public string Password { get; set; }
}

当我使用邮递员访问它时,会收到此消息

{
    "": [
        "The input was not valid."
    ]
}

如何获取我的输入?我不应该使用物体吗?我尝试通过String Username和String Password作为参数来获取它,但是效果不佳。

编辑:

添加了Postman屏幕截图 enter image description here

3 个答案:

答案 0 :(得分:1)

在Postman中使用原始模式并以Json的身份发送您的请求

{"Email":"","Password":""}

答案 1 :(得分:1)

您不需要在URL中添加方法名称

如果您的控制器名称为Tokens,则您的URL应该是这样的

http://localhost:52309/api/Tokens/

然后邮递员输入应如下所示

enter image description here

答案 2 :(得分:1)

如果您使用PostMan,则必须在原始模式下选择JSON(json.application)