强制AngularJS $ http.post返回JSON

时间:2015-02-25 15:25:32

标签: xml json angularjs angular-http

来自jQuery,将content-type设置为application / json会给我一个json对象而不是xml格式的字符串。

如何使用AngularJS $ http.post实现相同的效果?

尝试做

$http({
    method: "post",
    url: "url",
    headers: { "Content-Type": "application/json; charset=utf-8" }
})

但成功的参数是xml格式的字符串。

2 个答案:

答案 0 :(得分:0)

设置"内容类型"标题告诉服务器请求正文包含哪些类型的内容并设置"接受"标题告诉服务器您期望响应体内容的格式。

因此,如果您的服务器能够以json格式呈现呈现响应,则设置标题"接受:application / json"在你的请求中。

标题:{"内容类型":" application / json","接受" :" application / json" }

您还可以验证角度应用发送的请求以及从浏览器开发控制台获取的响应。

希望它会对你有所帮助。

答案 1 :(得分:0)

只需制作方法:“发布”并发送空数据对象......

$http({
        method: "post",
        url: 'url',
        data: {}
    }).then( function(response) {
        console.log(response);
});

如果你想要回复XML:

$http({
        method: "post",
        url: 'url',
        params: {}
    }).then( function(response) {
        console.log(response);
});

更改GET方法以接收JSON响应完全是另一种野兽,但是当服务不是参数时,这是有效的。如果反之亦然,你可以添加参数。

相关问题