2010-06-14 73 views
1

我有一塊JavaScript抓取JSON數據。當在本地執行時,一切似乎都很好。但是,當我嘗試從其他站點訪問它時,它不起作用。Jquery getJSON不工作跨站點

這是腳本。

$(function(){ 
    var aT = new AjaxTest(); 
    aT.getJson(); 
}); 

var AjaxTest = function() 
{ 
    this.ajaxUrl = "http://mydeveloperpage.com/sandbox/ajax_json_test/client_reciever.php"; 

    this.getJson = function(){ 
     $.getJSON(this.ajaxUrl, function(data){ 
      $.each(data, function(i, piece){ 
       alert(piece); 
      }); 
     }); 
    } 
} 

您可以在「http://mydeveloperpage.com/sandbox/ajax_json_test/」找到完全相同的文件的副本。

任何幫助將不勝感激。

謝謝!

回答

3

documentation

  • 由於瀏覽器的安全限制,大多數 「Ajax」 的請求都受到同源策略; 該請求無法成功檢索來自不同域,子域或協議的數據。

  • 腳本和JSONP請求不受相同的源策略限制。

你會需要使用JSONP闖過同源策略。 jQuery可以使這種無縫(見上述文檔頁面的其餘部分)。

+0

嘿謝謝!這正是我需要的。 – 2010-06-14 16:34:09