如何使用GET方法从url获取xml数据

时间:2019-06-03 09:58:52

标签: javascript php jquery

我需要从中获取XML数据 此URL:http://45.119.203.114:8888/xmltv.php?username=epg&password=epg 解析EPG数据

我尝试使用Javascript和PHP,但无法正常工作

这是我的代码

JavaScript

var xmlHttp = new XMLHttpRequest();

    xmlHttp.open( "GET", 'http://45.119.203.114:8888/xmltv.php?username=epg&password=epg'); // false for synchronous request
    xmlHttp.responseType = 'document';
    xmlHttp.setRequestHeader('Accept', 'application/xml');

    xmlHttp.onload = function () {
        if ( xmlHttp.readyState == 4  && xmlHttp.status == 200 ) {
            console.log(xmlHttp.responseXML);
        }
    }
    xmlHttp.send();

我的javascript代码中的结果始终是'Access-Control-Allow-Origin'

这是我的PHP代码

$path = 'http://tvku.live:8888/xmltv.php?username=epg&password=epg';



    $xml=simplexml_load_file($path);
            $me = "sub-title";
            foreach($xml->programme as $item){
                echo "Start : " .date("G:i d.m.Y", strtotime(substr($item["start"], 0,  -6))) . '<br>';
                echo "End : " .date("G:i d.m.Y", strtotime(substr($item["stop"], 0,  -6))) . '<br>';
                echo "Channel : ".$item["channel"]. "<br>";
                echo "Title : ".$item->title. "<br>";
                echo "Info : ".$item->$me. "<br>";
                echo "Description : ".$item->desc. "<br>";
                echo "<br>";
            }

我的php代码中没有结果,在我尝试使用CURL来获取数据之前,我的PHP代码中没有结果

请寻求帮助,谢谢

1 个答案:

答案 0 :(得分:3)

  

我的javascript代码中的结果始终为否   “访问控制允许来源”。

好吧,错误很明显,如果您拥有必须允许CORS的后端,则不允许后端回答CORS请求(请参阅this文档)。
否则,您需要请后端所有者允许CORS请求。