xmlhttprequest始终在同一台机器上返回状态0甚至客户端和服务器

时间:2013-01-15 06:54:51

标签: html xmlhttprequest

我知道这几个问题,并且我指的是所有这些帖子,即使在那之后也无法解决我的问题。我已经为客户端服务器通信创建了一个html页面。这是代码

<!DOCTYPE html>
<html>
    <head>
        <title>Sandbox</title>

        <script type="text/javascript">

            function log (text) {
                document.getElementById("contents").innerHTML = document.getElementById("contents").innerHTML + "<br />" + text;
            }

            function ready() {
                log("Ready.");
                var xmlhttp = new XMLHttpRequest();

                xmlhttp.onreadystatechange = function () {
                    log("State: " + xmlhttp.readyState + ", Status: " + xmlhttp.status
+ ", Statustext: " + xmlhttp.responseText);
                    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                        log("CSV Content:");
                        log(xmlhttp.responseText);
                    }
                };

                log("Open.");
                xmlhttp.open("GET", "http://10.5.13.142/iptvservice.xml", false);
                log("Send.");
                xmlhttp.send(null);
                log("Sent.");
                window.removeEventListener('DOMContentLoaded', ready, false);
            }

            window.addEventListener('DOMContentLoaded', ready, false);
        </script>

    </head>
    <body>
        <div id="contents">Loading.</div>
    </body>
</html>

服务器是Apache服务器。我在安装了服务器的同一台机器上运行此页面。在Mozilla上,状态代码为0,并且在加载时挂起。我没有得到什么问题。我已经读过如果你在同一个域上,你不需要在manifest.json上设置权限。那我错了。请帮忙。

编辑:其实我的要求是使用phonegap在android上运行此代码。所以我想用java脚本。所以任何人都可以建议使用xmlhttprequest如何创建客户端服务器连接。

1 个答案:

答案 0 :(得分:0)

抱歉,但刚才我有了这个链接

XMLHttpRequest Fails On Same Domain

但在我的情况下,Apache服务器提供xml页面。所以我应该放我的脚本。这只是为了测试目的我使用相同的机器,但之后我需要在不同的机器上运行相同的页面。那会是什么解决方案。抱歉,我问的是一个非常简单的问题,但需要一些帮助。

编辑:仅供参考。我确实根据链接进行了更改

  

http://www.skill-guru.com/blog/2011/02/04/adding-access-control-allow-origin-to-server-for-cross-domain-scripting/

然后运行谷歌浏览器,它工作,但它仍然无法在Firefox上运行。无论如何,至少我的代码和服务器安装是正确的。