我有一些旧代码通过jQuery的post方法发出AJAX POST请求,看起来像这样:
$.post("/foo/bar", requestData,
function(responseData)
{
//do stuff with response
}
requestData
只是具有一些基本字符串属性的javascript对象。
我正在移动我们的内容以使用Angular,并且我想用$ http.post代替此调用。我提出以下内容:
$http.post("/foo/bar", requestData).success(
function(responseData) {
//do stuff with response
}
});
当我这样做时,我从服务器收到500错误响应。使用Firebug,我发现这发送了如下请求体:
{"param1":"value1","param2":"value2","param3":"value3"}
成功的jQuery $.post
发送如下内容:
param1=value1¶m2=value2¶m3=value3
我要命中的端点期望请求参数而不是JSON。因此,我的问题是无论如何要告诉$http.post
发送JavaScript对象作为请求参数而不是JSON?是的,我知道我可以自己从对象构造字符串,但是我想知道Angular是否为此提供了开箱即用的功能。