.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