Angularjs $http未发送数据

Angularjs $http未发送数据,angularjs,http,http-post,asp.net-web-api2,Angularjs,Http,Http Post,Asp.net Web Api2,我知道它已经在这里解决了很多次,但我仍然无法让它工作 我的电话是: var data = { value: 7 }; $http.post('api/controller/method', data); 但在fiddler中没有内容类型和JSON数据。 我希望内容类型为“application/json”,这应该是默认值,对吗 谢谢试试这个: var response = $http.post('api/controller/method', data); response.success(f

我知道它已经在这里解决了很多次,但我仍然无法让它工作

我的电话是:

var data = { value: 7 };
$http.post('api/controller/method', data);
但在fiddler中没有内容类型和JSON数据。 我希望内容类型为“application/json”,这应该是默认值,对吗

谢谢

试试这个:

var response = $http.post('api/controller/method', data);
response.success(function(data, status1, headers, config) {
    //
}

仍然不起作用。它发送选项动词而不是POST(根据WebApi2发布)。当我在fiddler中撰写一篇文章时,它是有效的,但听起来好像你在尝试做一篇跨域文章。如果您正在执行跨域请求,浏览器将发送选项。是的,我是。并且在服务器上是允许的。服务器是否响应
选项
?服务器应返回
访问控制允许方法:POST
。帮助,谢谢。但是为什么URLCoded可以工作而不是application/json?当发送7这样的简单值时,它将不起作用。这回答了您关于URLCoded@matt bridges的提示,为什么不能使用简单值?您必须在后端检查您接收到的参数,并在我只发送7时给出响应,我在服务器上读取了0。当我将其包装到var post={data:7}中时,服务器上有一个属性为data=7的对象。简单的价值观对我不起作用。。我已经用服务器端的泛型解决了这个问题,但我不明白为什么。。
var response = $http.post('api/controller/method', data);
response.success(function(data, status1, headers, config) {
    //
}