因此,我试图通过Angular服务中的put调用将字符串传递给Web Api。该服务实际上在Web Api端调用该方法,但是参数始终通过null来传递。有人可以照亮一点,谢谢。
代码如下:
Web Api :(在第一个括号中设置了断点)
public void Put([FromBody]string userId)
{
}
角度:
UpdateManagerEmail(userId){
userId = '577f1e6e-146d-49f1-a354-b31349e7cb49';
const headers = new HttpHeaders();
headers.append('Content-Type', 'application/json');
this._http.put('http://localhost:428/api/User', {
userId : userId
}).subscribe(returnVal => {
console.log('returned');
});
}
答案 0 :(得分:1)
要让后端在已发送的请求正文中找到userId,它必须是其中的唯一值。您应该将content-type
更改为:application/x-www-form-urlencoded; charset=UTF-8
并发送没有密钥的数据。
在文档上备注:
在发送简单类型之前,请考虑将值包装为复杂类型。这为您提供了在服务器端进行模型验证的好处,并且在需要时可以更轻松地扩展模型。
此外,this blog比我解释得更好。