当我提交 angularjs $http
GET调用时,我收到XML解析错误。
$ http呼叫代码段是:
$http({
method: 'GET',
url: "myapp/api/items" + itemId
});
错误是:
XML Parsing Error: no element found Location: moz-nullprincipal:{f191853f-5581-b049-b83f-5f4b69211adb} Line Number 1, Column 1:
返回的数据是JSON。如果我将URL放在浏览器中,则提交请求并且响应数据在浏览器中成功返回。
我尝试将responseType: 'json'
(和responseType: 'application/json'
)添加到$http
来电,但没有成功。 (我引用了angularjs http doc中的Usage部分来确定如何配置调用。)
有没有办法可以强制将响应数据识别为json以避免错误?
答案 0 :(得分:2)
如果您使用的是Mozilla Firefox,请安装firebug并尝试在Net面板或Console面板中检查http GET。
在标题标签中,您可以查看正在发送和接收的内容类型。也许问题出在服务器端响应的内容类型中。
答案 1 :(得分:1)
可能是您正在file:///
中运行您的应用程序,因为这是AJAX请求,因此可能会发生。如果已安装nodejs,则可以安装服务器并查看控制台日志。
要在nodejs上安装服务器
npm install -g http-server
然后转到(cd
进入您的项目目录,然后:
http-server -o. -o
现在查看浏览器控制台。