获取.Net Core应用程序中通过PostAsJsonAsync发送的.Net Core Api中的值

时间:2019-06-26 11:26:33

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

如何获取后端中的值?密钥为null,登录名为false[FromQuery][FromBody][FromForm]无效

网络核心应用程序(前端)

HttpResponseMessage httpResponse = await client.PostAsJsonAsync("stamptimes", new { key, login });

网络核心Api(后端)

[HttpPost]
public JsonResult PostNewStamptime(string key, bool login)
    {...}

1 个答案:

答案 0 :(得分:2)

您发送对象和后端,但解构后的值除外。您的API应该如下所示;

[HttpPost]
public JsonResult PostNewStamptime([FromBody] LoginModel model)
    {...}

LoginModel应该包含下面的键和登录属性

public class LoginModel {
    public string Key {get;set;}
    public bool Login {get;set;}
}

此外,您可以通过将端点statusVerb更改为“获取并发送查询字符串中的参数”来避免使用模型。届时,您可以通过[FromQuery]与他们联系。 但这在语义上是错误的。