2013-01-25 52 views
1

我有一個函數,它使用.getJSON從服務器獲取JSON文件,從中獲取一些數據(一個url是數據的一部分),然後調用另一個需要的函數從解析的URL(簡單的簡單HTML頁面)獲​​取信息。.getJSON工作,.get不是

var jsonurl = "http://server.company.com/file.json"  
$.getJSON(jsonurl, function(data){ 
    //do some stuff, then call the below function 

$.get("http://server.company.com/sub/dir/file.html", function(data){ 
    alert(data); //this never fires 
}); 

JSON部分正在通過罰款。 HTML部分沒有做任何事情。根據Firebug的說法,頁面看起來是正確返回的(200),但我沒有收到任何數據。

JSON文件和其他普通的HTML頁面在同一臺服務器上,只是不同的目錄,所以我不認爲這是一個域相關的問題。我最初嘗試使用數據;

但由於某種原因,Firefox和Chrome都在req.send()上叫聲。我的研究使我認爲這是一個(跨域)相關問題 - 瀏覽器認爲該頁面正在請求域外的數據(各方都位於以「company.com」結尾的相同域中)。

爲什麼我的$ .get不工作和/或如何擺脫XMLHttpRequest.send()錯誤?

+0

具體是什麼錯誤? – broofa

+0

當嘗試XMLHttpRequest選項時,Firebug會返回'NS_ERROR_FAILURE:失敗 - awr.send();'Chrome報告'未捕獲錯誤:NETWORK_ERR:XMLHttpRequest異常101' – Andenthal

+3

'server.company.com'和'company.com'是*根據相同的原產地政策不同*。 –

回答

1

交叉域ajax僅適用於使用getJSON函數的JSONP