ASP.NET Core 3.x [FromBody] 传递 Json 字符串


ASP.NET Core 3.x [FromBody] 传递 Json 字符串

虽然都推荐使用[FromBody]自动推断类型的属性,但我还是去玩了一下

首先就是需要安装两个包

Microsoft.AspNetCore.Mvc.NewtonsoftJson
Newtonsoft.Json

配置 Startup

services.AddControllers()
        .AddNewtonsoftJson()
        .ConfigureApiBehaviorOptions(options =>
        {
            // 禁用自动推断
            options.SuppressInferBindingSourcesForParameters = true;
        });

ConfigureApiBehaviorOptions 可以参考以下链接

https://www.cnblogs.com/qianxingmu/p/12960764.html

Post 方式传递 Json 数据

[HttpPost("DoLogin")]
public IActionResult DoLogin([FromBody] JObject value)
{
    var jsonStr = JsonConvert.SerializeObject(value);
    var jsonParams = JsonConvert.DeserializeObject<dynamic>(jsonStr);

    //根据 key 取出 value
    string username = jsonParams["Username"];
    string password = jsonParams["Password"];
}

ASP.NET Core 3.x [FromBody] 传递 Json 字符串 结束


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM