Ошибка при чтении XML с Javascript с другого сервера - PullRequest
1 голос
/ 26 декабря 2011

Я работаю в приложении для iPhone в HTML. Он должен извлечь содержимое из XML-файла, хранящегося на удаленном сервере, и отобразить его содержимое в списке.

Я уже достиг этого, когда xml-файл хранится на том же сервере с таким кодом:

    <body>
        <div id="container"> 
            <div id="header">
                <h1><a href="./">BurgerFast</a></h1>
                <p>Menú</p>
                <div>
                    <div id="nav">
                        <ul>
                            <span id="lista"></span>
                        </ul>
                    </div>
                    <div id="footer">
                        <ul>
                            <li><a href="/assets/cl.png">Acerca de</a></li>
                            <li><a href="/assets/cl.png">Ayuda</a></li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>

        <script type="text/javascript">
        if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    }
        else
    {// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
        xmlhttp.open("GET","assets/note.xml",false);
        xmlhttp.send();
        xmlDoc=xmlhttp.responseXML;

        var item = xmlDoc.getElementsByTagName("item")

        var myElems = "";
        for(i = 0 ; i < item.length ; i++){
            myElems = myElems + "<li><a>" + item[i].getElementsByTagName("name")[0].childNodes[0].nodeValue + "</li></a>";
        }

        document.getElementById("lista").innerHTML =  myElems;


        </script>

    </body>

Пока проблем нет. Поскольку файл размещен на одном и том же сервере, он работает хорошо, но я хочу иметь возможность загружать xml с разных серверов, кроме моего. Когда я меняю строку:

xmlhttp.open("GET","assets/note.xml",false);

и оставьте так:

xmlhttp.open("GET","http://173.236.56.146/~crayonli/xml/note.xml", true);

он говорит мне каждый раз, когда xmldoc равен нулю , я не понимаю, это тот же чертов xml.

Я просто не вижу, где моя ошибка. Может кто-нибудь сказать?

1 Ответ

1 голос
/ 26 декабря 2011

Вы не можете использовать XmlHttp в разных доменах.Перекрестные домены не поддерживаются.Для достижения этого вы можете использовать прокси-механизм или просто мугл xmlhttp кросс-домен ...

Эта ссылка может помочь вам больше XmlHttp Corss Domain Proxy

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...