我正在尝试从我的Angular应用程序将JSON字符串发送到Web API。我已经在互联网上搜索了过去6个小时,但一直无法弄清楚我做错了什么。
我已经检查了网络控制台,可以看到json作为表单数据,但是由于某种原因,我的Web API没有收到它。我查看了其他几篇文章,但似乎没有帮助解决我的问题。任何指导都将非常有帮助。我已经尝试使用“transform”修复程序,但那也没有帮助。
WEB API的入口点
[HttpPost]
[Route("api/SkeltaInterfaceController/SaveWorkflow")]
public bool SaveWorkflow([FromBody] string json)
{
...
}
ANGULAR调用
$scope.SaveWorkFlow = function () {
$http({
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
method: "POST",
url: webAPI,
data: {'DATA' : 'TEST DATA'
}
})
}
编辑:我将Angular的调用更改为以下内容
$scope.SaveWorkFlow = function () {
$http({
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
method: "POST",
url: webAPI,
data: {'DATA' : 'TEST DATA'}
})
}
Web API 长这样
[HttpPost]
[Route("api/SkeltaInterfaceController/SaveWorkflow")]
public bool SaveWorkflow([FromBody] TestModel json)
{
...
}
并且这个模型
public class TestModel
{
public string DATA { get; set; }
}
我仍然收到一个空值(null)的DATA,这是我设置错了吗?
Request.InputStream
吗?如果可以的话,请提供完整的 .NET 类。 - Sean Larkin