JsonNetValueProviderFactory不会从AngularJS帖子反序列化JSON

时间:2014-11-21 09:14:17

标签: ajax json angularjs asp.net-mvc-4

我有一个asp.net MVC应用程序。

在我的global.asax中:

ValueProviderFactories.Factories.Add(new JsonNetValueProviderFactory());

如果我使用jquery ajax

$.ajax({
    url: urlPostInvitation,
    type: 'POST',
    dataType: 'json',
    data: $.toJSON($scope.invitation),
    contentType: 'application/json; charset=utf-8',
    success: function (data) {
        alert('Yes');
    }
});

一切正常,但如果我使用AngularJS ajax

$http({
    url: urlPostInvitation,
    method: "POST",
    data: $scope.invitation,
    headers: { 'Content-Type': 'application/json; charset=utf-8' }
}).success(function (data, status, headers, config) {
    alert("Yes");
});

我在服务器中得到一个空对象。

使用JsonValueProviderFactory一切正常,但不适用于JsonNetValueProviderFactory

2 个答案:

答案 0 :(得分:0)

如果您将$ scope.invitation和$ .toJSON($ scope.invitation)输出到控制台,它们看起来是否相同?

答案 1 :(得分:0)

我回答自己,jQuery ajax帖子添加标题:'X-Requested-With':'XMLHttpRequest'

如果我在AngularJs调用中添加它,它可以正常工作