Angular POST和Web API

时间:2015-09-03 12:17:31

标签: angularjs asp.net-web-api

我的代码如下:

其中有效负载如下所示: {“CASEID”:3,“CASENUMBER”:“ANY”,“TITLE”:“ANY”}

后端代码:

    var response = $http({
        method: 'post',
        withCredentials: true,
        dataType: "json",
        data: JSON.stringify(payload),

        headers: {
           'Content-Type': 'application/json; charset=utf-8',
        },
        url: url
    });

运行时,显示的值为null。 如果我将标题更改为'Content-Type':'application / x-www-form-urlencoded',那么我确实获得了值,但属性等于null / 0。我做错了什么?

由于

1 个答案:

答案 0 :(得分:1)

您不需要致电JSON.stringify。这导致将字符串发送到服务器,而不是对象。由于WebAPI模型绑定器需要CL_CASE对象,因此无法仅从字符串填充该对象。

只需发送对象本身:

data: payload

说实话,在这种情况下,我根本不认为你需要headers选项。让默认功能处理它:

$http({
    method: 'post',
    withCredentials: true,
    dataType: 'json',
    data: payload,
    url: url
})