Ajax Cross Domain无法正常工作

时间:2012-10-18 17:39:13

标签: javascript html ajax

  

可能重复:
  Ajax cross domain call

在这里使用此代码..

   var URLs = new Array();
   var titulo = new Array();

   $.ajax({
     url: 'http://www.example.com.br',
     type: 'GET',                                                    
     success: function(res) {
       headline = $(res.responseText).text();                                                              
       URLs = headline.split(",LK");
       CriaVideos(URLs);                               
    }
   }); 

  function CriaVideos(URLs)
  {                           
   for(var i = 0; i <= 5; i++)
   {
    var aux = new Array();
    aux = URLs[i].split("#");

    titulo.push(aux[0]);
    titulo.push(aux[1]);
    Cria(titulo);
   }                   
  }                                           

 function Cria(titulo)
 {                                                                   
   document.write('<li><div id="frame_video"><a href="TelaVideoWind.php?nome='+       titulo[1]+ '&video=' + titulo[0] + '"><span class="frame_video_img"><img src="img/play.png" width="60px" height="40px" align="middle" style="position: absolute; margin-top: 55px; margin-left: 95px;"/><img src="http:/'+ titulo[0]+ '/i.ytimg.com/vi/hqdefault.jpg" width="250px" height="150px"/></span><span class="frame_video_desc"></span></a></div></li>');                          
 }

它会在标题document.write中工作还是在函数外部使用它但它不起作用!我想知道是否有人可以提供帮助!

1 个答案:

答案 0 :(得分:0)

正如Felix Kling所说,大多数浏览器都不允许这样的跨域调用。有两种方法可以解决这个问题,例如http://en.wikipedia.org/wiki/JSONP,但是这需要你所追求的是我认为的JSONP服务。

或者,您可以在您正在使用的任何网络语言中使用代理页面。因此,您可以让php页面执行服务器到服务器请求,以获取您当前发送ajax请求的页面。然后,您的代理页面可以提供从服务器到服务器调用ajax调用的内容/响应。