相关疑难解决方法(0)

AngularJS - $ http.post发送请求参数而不是JSON的任何方式?

我有一些旧的代码通过jQuery的post方法发出一个AJAX POST请求,看起来像这样:

$.post("/foo/bar", requestData,
    function(responseData)
    {
        //do stuff with response
    }
Run Code Online (Sandbox Code Playgroud)

requestData 只是一个具有一些基本字符串属性的javascript对象.

我正在将我们的东西移动到使用Angular,我想用$ http.post替换这个调用.我想出了以下内容:

$http.post("/foo/bar", requestData).success(
    function(responseData) {
        //do stuff with response
    }
});
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我收到了来自服务器的500错误响应.使用Firebug,我发现这样就发送了请求体:

{"param1":"value1","param2":"value2","param3":"value3"}
Run Code Online (Sandbox Code Playgroud)

成功的jQuery $.post发送身体像这样:

param1=value1&param2=value2&param3=value3
Run Code Online (Sandbox Code Playgroud)

我遇到的端点是期望请求参数而不是JSON.所以,我的问题是,无论如何要告诉$http.post发送javascript对象作为请求参数而不是JSON?是的,我知道我可以自己从对象构造字符串,但我想知道Angular是否提供了开箱即用的东西.

javascript jquery post angularjs

116
推荐指数
7
解决办法
21万
查看次数

标签 统计

angularjs ×1

javascript ×1

jquery ×1

post ×1