【问题标题】:Cross-site AJAX - request data from a Tomcat server跨站点 AJAX - 从 Tomcat 服务器请求数据
【发布时间】: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


    【解决方案1】:

    尝试在 localhost 之前添加 http://

        url : "http://localhost:8020/printxml.html",
    

    【讨论】:

    • 啊,对不起,我不知道为什么我在写我的帖子时删除了它。但这两种方式都不起作用。
    猜你喜欢
    • 2012-06-10
    • 2012-04-13
    • 2012-07-17
    • 2010-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    • 1970-01-01
    相关资源
    最近更新 更多