Jquery 通过Ajax调用调用远程XML

Jquery 通过Ajax调用调用远程XML,jquery,xml,Jquery,Xml,我在远程服务器中有一个xml。现在我想用ajax来命名它。IE正在给出所需的结果。但是Firefox和chrome不能。请给我答案。我用谷歌搜索了一下,但没有找到解决办法 $.support.cors = true; $.ajax({ type: "GET", url: "http://www.w3schools.com/xml/note.xml", dataType: "xml", success: function(node) {

我在远程服务器中有一个xml。现在我想用ajax来命名它。IE正在给出所需的结果。但是Firefox和chrome不能。请给我答案。我用谷歌搜索了一下,但没有找到解决办法

$.support.cors = true;
    $.ajax({ 
    type: "GET", 
    url: "http://www.w3schools.com/xml/note.xml", 
    dataType: "xml", 
    success: function(node) 
    { 
    alert(node); 
    }, 
    error: function() 
    { 

    alert("Network Error"); 

    } 
    });

跨域使用ajax真的很难,看看谷歌吧。 使用ajax在ur serwer中调用.php并使用curl post

我英语很差

创建对ajax.php的调用GET 并在ajax.php中编写

echo GETrequest("http://www.w3schools.com/");
这是我的2 curl函数,只需更改结束行,$this->data即可返回

private function GETrequest($link){
        $zapytanie = curl_init(); // adres strony
        curl_setopt($zapytanie, CURLOPT_URL, $link);
        curl_setopt($zapytanie, CURLOPT_USERAGENT, "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.4) Gecko/20091030 Gentoo Firefox/3.5.4"); // useragent
        curl_setopt($zapytanie, CURLOPT_HTTPHEADER, array("Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Language: pl,en-us;q=0.7,en;q=0.3", "Connection: keep-alive","Cache-Control: max-age=0","text/html; charset=UTF-8"));
        curl_setopt($zapytanie, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($zapytanie, CURLOPT_COOKIEFILE, dirname(__file__) . '/cookies/'.$this->adres_ip.'/cookies.txt'); // ciacha
        curl_setopt($zapytanie, CURLOPT_COOKIEJAR, dirname(__file__) . '/cookies/'.$this->adres_ip.'/cookies.txt'); // ciacha
        $this->data = curl_exec($zapytanie);
        $this->getinfo = curl_getinfo($zapytanie);
        curl_close($zapytanie);
    }
    private function POSTrequest($link,$post){
        $zapytanie = curl_init(); // adres strony
        curl_setopt($zapytanie, CURLOPT_URL, $link);
        curl_setopt($zapytanie, CURLOPT_USERAGENT, "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.4) Gecko/20091030 Gentoo Firefox/3.5.4"); // useragent
        curl_setopt($zapytanie, CURLOPT_HTTPHEADER, array("Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Language: pl,en-us;q=0.7,en;q=0.3","Referer: https://www.linkedin.com/uas/login-submit", "Connection: keep-alive","Content-Type: application/x-www-form-urlencoded"));
        curl_setopt($zapytanie, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($zapytanie, CURLOPT_COOKIEFILE, dirname(__file__) . '/cookies/'.$this->adres_ip.'/cookies.txt'); // ciacha
        curl_setopt($zapytanie, CURLOPT_COOKIEJAR, dirname(__file__) . '/cookies/'.$this->adres_ip.'/cookies.txt'); // ciacha
        curl_setopt($zapytanie, CURLOPT_POST, 1);
        curl_setopt($zapytanie, CURLOPT_POSTFIELDS, $post);
        $this->data = curl_exec($zapytanie);
        $this->getinfo = curl_getinfo($zapytanie);
        curl_close($zapytanie);
    }

是的,您肯定会遇到ajax跨域问题

  • 首先是使用proxy.example
  • 使用
因为这不是一个值得分享的话题。我不会在你的代码中实现它。但是如果你检查这些东西,我相信你可以解决这个问题

编辑一个简单的谷歌搜索结果。
其他人更清楚地解释了解决方案。您可以使用它。

这在纯jquery中是不可能的。您需要执行以下操作之一:

  • 使用代理服务器(可以通过代理运行请求的地方,比如说使用PHP)

  • 如果您拥有
    w3schools.com
    ,您可以通过JSON(通过启用CORS)使您自己的站点能够访问XML


  • 请尝试将URL更改为“”,看看它是否有效亲爱的MichałSzałapski。谢谢你的回答。但不幸的是,我不能使用php。我只能用jquery来完成这项工作。请给我提供解决方案。是的,你是对的,我陷入了跨域的困境。我认为,这是不可能的,你需要使用php,因为w3school需要手动添加你的域来接受你的GET和POST。当然,你可以尝试$.GET或$.POST,但我认为,这不会太奏效。IE工作是因为它太糟糕了。新浏览器将不会发送此请求。亲爱的AKS,非常感谢您的回复。请你指导我怎么做。我还将$.support.cors=true;在我的代码中,但是失败了。请帮帮我。我需要这个,谢谢你,克里斯。请你给我引路好吗。我不会用PHP。请帮助我如何通过json实现。我已经把$.support.cors=true;在我的代码中。根据我的回答。如果没有上述两个选项中的一个,就无法(目前)实现这一目标。你有可以使用的服务器吗?或者你拥有w3schools.com?没有。实际上,我们有一个服务器,在那里我们的项目将被上传。如果可以的话,请帮助我。那么你可以访问PHP了吗?我想你应该开始一个关于如何使用服务器从服务器中提取数据的新问题(你需要弄清楚服务器上安装了什么语言,是PHP、ASP等)