1. 程式人生 > 其它 >.net core webapi Post接收不到ajax請求data資料

.net core webapi Post接收不到ajax請求data資料

https://blog.csdn.net/weixin_44352179/article/details/106633989

在做.NET CORE WEBAPI介面案例的時候碰到了前端頁面ajax post請求介面時,api接收到的資料為NULL。
在core裡面

FromBody對應的是application/json或xml這種格式
FromForm對應的www-for或者form-data這種格式

apiController這個貌似是2.1開始才有的
不加apicontroller的話,預設是FromForm,加了預設是FromBody

//前端程式碼
$.ajax({
type: 'POST',
url: 'http://localhost:5788/Users/UserLogin',
dataType: 'json',
contentType: "application/json",
data: JSON.stringify(objuser),
success: function(data){
alert('資料載入成功');
},
error: function(xhr, type){
alert('資料載入失敗');
}
});



經過測試有兩種可行方法進行解決:
第一:

把.NET CORE WEBAPI介面控制器的[ApiController] 修改 成 [Controller] 就能正常獲取引數例項。
第二

如果加了ApiController的話post方法的引數需要加上FromForm;
如:
[HttpPost]
public IActionResult Login([FromForm] User user)


————————————————
版權宣告:本文為CSDN博主「石慶SQ」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。
原文連結:https://blog.csdn.net/weixin_44352179/article/details/106633989