.net core webapi Post接收不到ajax请求数据

6 篇文章 0 订阅
2 篇文章 0 订阅
在做.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)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值