我有一些旧代码通过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 是否为此提供了开箱即用的东西。