【发布时间】:2011-07-27 22:16:15
【问题描述】:
我有问题。我目前有一个 Tomcat 服务器在我的机器的端口 8080 上进行监听,并且正在运行一个 Web 应用程序(可在 localhost:8080/test-app 访问)。我希望此服务器能够提供动态生成的 XML 文件。它在任何浏览器中运行良好,它可以做我想做的事。
现在,我想在另一台服务器上构建一个网页(我使用 Aptana 的内部服务器,监听端口 8020),它将从第一台服务器获取 XML 文件。 问题是,无论我在 Chrome 还是 FireFox 中尝试,我是从 localhost:8020/printxml.html 还是从我的文件系统(在 file:///E:/ <...>/printxml.html),我没有收到数据。
这是我获取数据的 JavaScript 代码(我使用 jQuery 的 $.ajax() 方法):
function treatResponse(xml) {
if(xml == "OK")
// Deal with the data here
else
alert("Error during XML generation");
}
function treatError(xhr, ajaxOptions, thrownError) {
alert("Connection error");
}
function my_login() {
var props = {
type : "POST",
url : "http://localhost:8020/printxml.html",
success : treatResponse,
error : treatError
};
$.ajax(props);
}
我做错了什么? 我读到应该在服务器端添加特殊的标头来通知跨站点请求是可行的(使用 Access-Control-Allow-Origin),但我只是可以让它工作。
提前致谢!
【问题讨论】:
标签: javascript ajax tomcat cross-domain