ASP.NET Core 3.x [FromBody] 傳遞 Json 字串
阿新 • • 發佈:2021-10-28
ASP.NET Core 3.x [FromBody] 傳遞 Json 字串
雖然都推薦使用[FromBody]
自動推斷型別的屬性,但我還是去玩了一下
首先就是需要安裝兩個包
Microsoft.AspNetCore.Mvc.NewtonsoftJson
Newtonsoft.Json
配置 Startup
services.AddControllers() .AddNewtonsoftJson() .ConfigureApiBehaviorOptions(options => { // 禁用自動推斷 options.SuppressInferBindingSourcesForParameters = true; });
ConfigureApiBehaviorOptions
可以參考以下連結
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"]; }