我正试图从角度2的应用程序发布一些数据到web api应用程序。它只是一个小的json字符串,当我点击web api控制器时,该项始终为null - 无论我尝试过什么。
json是(我可以通过警告数据看到这一点)
{"firstname":"Joe","lastname":"Bloggs"}
角度函数是
createUser(user: Profile): Observable<Response> {
let url = this.usersUrl;
let data = JSON.stringify(user);
let headers = new Headers({'Content-Type': 'application/json; charset=utf-8' });
let options = new RequestOptions({ headers: headers });
return this.http.post(url, data, options);
}
web api conroller方法是:
[HttpPost]
public IActionResult Create(User item)
{
if (item == null)
{
return BadRequest();
}
Users.Add(item);
return CreatedAtRoute("GetUser", new { id = item.Id }, item);
}
但是当我在创建用户项时断点时为空。
我试过了:
public IActionResult Create([FromBody] User item)
但Chrome控制台窗口中的错误消息为
Failed to load resource: the server responded with a status of 415 (Unsupported Media Type)
我试过
let headers = new Headers({ 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' });
但错误与上述相同。
任何想法?:)
答案 0 :(得分:0)
我认为您的问题是api中的用户模型。
属性需要完全相等。
您可以通过Google Chrome开发者工具分享网络结果,我们可以更轻松地为您提供帮助。