我有一個HTML /我試圖轉換到通過Phonegap Build appPhoneGap的應用程序:jQuery的獲取的getJSON 404錯誤相對URL獲取本地文件時
一切使用PhoneGap的一個應用程序的JavaScript應用程序通過瀏覽器工作正常,而該應用程序遇到的唯一問題是在嘗試加載我的本地資源時,致電getJSON
返回404錯誤。
這裏是罪魁禍首:
$.getJSON("./shapes/json/" + abbr + '.json', gotJSON(abbr));
我已列入白名單的每個域,只是要確定:
<access origin="*" />
這是什麼那是不可能的從PhoneGap的環境?或者我做錯了什麼?
如果需要,我可以在其他地方託管文件並進行跨域的ajax調用,但我寧願將文件放在設備上。
這是目前Android上正在發生的事情,這是目前我可以測試的唯一系統。
UPDATE:
現在我想:
var xhrShapes = new XMLHttpRequest(), xhrSuccess = gotJSON(abbr);
xhrShapes.open('GET', config.path + "/shapes/json/" + abbr + ".json");
xhrShapes.onreadystatechange = function(e){
if(this.readyState === 4){
if(this.status === xhrSuccessCode){
xhrSuccess(JSON.parse(this.responseText));
}
}
}
xhrShapes.send();
config.path
是 「文件:/// android_asset/WWW」 和我得到0
作爲一個成功的代碼(這表明'file://'請求成功)。但xhrShapes.responseText
是空白的,一切都在JSON.parse
的電話中停止。我覺得我錯過了一些簡單的...
「./shapes」=>「../shapes」? –
單點是正確的。 'shapes'文件夾與運行JavaScript的index.html位於同一文件夾中。我正在動態添加一個圖像並設置'src',它可以工作,所以我猜這是HTTP請求的某種問題。 –