【发布时间】:2013-02-09 17:02:04
【问题描述】:
我正在开发我的 web 应用程序并在 localhost:8080 上运行它,在我的 js 文件中,我有一个 ajax 调用来从服务器获取 xml 数据:
$.ajax({
url: 'http://COMPANY_DOMAIN.com/company-interface/the-id',
type: 'GET',
async: false,
dataType: 'application/xml',
data: {id: 43},
success: function(data) {
alert(data);
},
error: function(xhr, status, error){
alert('error happens');
}
})
我可以访问 URL http://COMPANY_DOMAIN.com/company-interface/the-id/?id=43,它将在浏览器上显示 xml 结果,但我上面的 ajax 调用总是转到错误函数。
我检查了 firebug,“xml”选项卡显示“XML 解析错误:找不到元素位置:moz-nullprincipal:{9fd0dca8-cf07-4401-b1de-ab04e8aa00bc} 第 1 行,第 1 列:" 并且 firebug 显示 URL GET 是 http://COMPANY_DOMAIN.com/company-interface/the-id/?id=43& =1302610001570。
为什么 firebug GET 显示“...& =1302610001570”?这是什么意思?为什么我的 ajax 调用失败了,虽然我可以访问那个 URL?
----编辑---------------
您好,我改为使用 localhost 请求,例如:
$.ajax({
url: 'http://localhost:8080/company-interface/the-id',
type: 'GET',
async: false,
dataType: 'xml',
data: {id: 43},
success: function(data) {
alert(data);
},
error: function(xhr, status, error){
alert('error happens');
}
})
但我遇到了同样的错误...请提供更多建议...谢谢。
【问题讨论】:
-
额外的参数防止被查询页面的缓存。如果这不起作用,可能是由于跨域安全问题
标签: javascript ajax jquery