2016-03-04 56 views
1

文件位於服務器上。文件結構如下所示:使用jquery訪問json文件,相對路徑錯誤

../index.html 
../js/data.json 
../js/insert.js 

我需要訪問此json文件。我這個試圖insert.js

$.get('data.json', function(data) { 
    console.log(data); 
}); 

我得到了

的XMLHttpRequest無法加載....沒有 「訪問控制允許來源」標頭出現在請求 資源。 Origin ...因此不被允許訪問。

當我使用JSON文件的絕對路徑時,它工作得很好。我需要它與相對路徑一起工作。哪裏不對?

+0

所以你的文件目錄1從您的基本路徑? – Scottie

+2

您的$ .get試圖訪問域data.json(如www.data.json),並從那裏獲取信息。這就是爲什麼你會得到XSS錯誤。您需要使用相對路徑,例如$ .get('/ js/data.json')。 – Scottie

+0

路徑顯然是錯誤的,但這是一個CORS錯誤,在這種情況下很奇怪。你是否試圖從'file://'協議打開這個頁面?或者在服務器上的不同端口上加載頁面? – charlietfl

回答

0

路徑錯誤。它應該看起來像:

$.get('/js/data.json', function(data) { console.log(data); }); 

如果文件樹是這樣的:

../index.html 
../js/data.json 
../js/insert.js