form-data
webapi Post 【实体类】 添加 FromBody 415错误
webapi Post 【实体类】 不添加 FromBody 200
Content-Type:application/json
问题没表述清楚。表单数据不用添加[FromBody]特性。[FromBody]特性是针对将request中的Body参数也就是JSON
我现在是 通过 PostMan
[FromBody] 是在什么情况下使用呢?
如何使用呢
@丿如何是好: 是你将参数放在Body中,同时在请求头中设置:Content-Type:application/json,
这个时候就需要用[FromBody]特性标识,从单词意思就大概能够猜到来自于Body
@Jeffcky:
类型 Content-Type:application/json
我在 Postman Body 里面添加对应的属性 报 415
在Url?{"Name":"dasd","Age":123} 报 500
@丿如何是好: 报415,
(1)那你确定是否用[FromBody]标识了呢?
(2)是否是POST请求
【Url?{"Name":"dasd","Age":123} 】这是啥玩意,在url加JSON??。这显然不对啦。
@Jeffcky: 使用了FromBody 然后就是 使用Post
Url?这个是乱实验的
@丿如何是好: 后台是否用[HttpPost]接收的呢
@Jeffcky: 是的
@丿如何是好: 你直接截图你的请求和后台代码就知道问题在哪里了
@Jeffcky:
这是后台代码 没有开通博客不能发截图
[HttpPost("Post")]
public UserInfo PostJsonPerson([FromBody]UserInfo user)
{
return user;
}
Postman
head
Content-Type:application/json
form-data 和后台实体类 属性一致
Name:131das2
Age:1
Address:dasd
@丿如何是好: 代码没问题。
@Jeffcky: 通过Postman 访问接口 参数
head
Content-Type:application/json
form-data 和后台实体类 属性一致
Name:131das2
Age:1
Address:dasd
这个也没有问题吧 ?
@Jeffcky:
@丿如何是好: 错了。
@丿如何是好: 说了是Body中传递JSON数据啊
@Jeffcky:
这是为什么呢?
@丿如何是好: 哎,你这都没分,我还一个劲的给你解答,呵呵
@Jeffcky:
好吧 麻烦您了
非常感谢
@丿如何是好: 我去,这是要求你传递JSON数据啊并放在body中,这就是用[FromBody]特性标识的前提。。。。。。。
@Jeffcky: 嗯嗯 好的 好像有点明白了 麻烦您了
建议确认一下请求头是否真的是 application/json
?
是的 Content-Type:application/json
不添加 FromBody 就是正确的