2014-02-08 174 views
0

我,只要我編譯的PhoneGap它停止工作Ajax請求在瀏覽器中工作,但不是在PhoneGap的

阿賈克斯有一個跨域請求,在Firefox完美的工作,鉻等 :

function createCORSRequest(method, url){ 
    var xhr = new XMLHttpRequest(); 
    if ("withCredentials" in xhr){ 
     xhr.open(method, url, true); 
    } else if (typeof XDomainRequest != "undefined"){ 
     xhr = new XDomainRequest(); 
     xhr.open(method, url); 
    } else { 
     xhr = null; 
    } 
    return xhr; 
} 

var request = createCORSRequest("get", "http://www.sellfast.co.za/get.php"); 
if (request){ 
    request.onload = function(){ 
     document.body.innerHTML = request.responseText; 
    } 
    request.send(); 
} 

這代碼重寫主體hmtl並僅顯示從服務器獲取的結果文本。 我這樣做只是爲了測試。它什麼也不做一次PhoneGap的運行

這是在服務器上get.php:

<?php 
header("Access-Control-Allow-Origin: *"); 
echo "Hello world"; 
?> 

我已將此添加到PhoneGap的config.xml文件:

<access origin="*" subdomains="true" /> 

但它仍然沒有改變任何東西

任何想法,爲什麼這不工作?

最好的問候,

傑森

+1

嘗試你之前等待deviceready事件開始請求。 – QuickFix

+0

你知道什麼...可能工作。生病回到你身上。 – Mystx

+0

這在模擬器中工作,但不是當我在Android設備上運行它? – Mystx

回答

0

在PhoneGap的使用Ajax,則必須列入白名單特定域,您可以在這裏閱讀所有關於它 click here to visit page

+0

我已經這樣做了。我已經將白名單添加到了config.xml文件中,並且它不起作用 – Mystx

相關問題