AngularJS - $http.post 发送请求参数而不是JSON有什么方法吗?
我有一些旧代码通过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。所以,我的问题是,无论如何都要告诉将javascript对象作为请求参数而不是JSON发送吗?是的,我知道我可以从对象中自己构造字符串,但我想知道Angular是否提供了开箱即用的东西。$http.post