2014-01-21 2 views
0

Итак, я пытаюсь вызвать свой сервер server.com/api для некоторых данных из приложения Android Phonegap. Я называю это методом HTTP Get.Phonegap http GET-запрос возвращает пустую строку

Все работает нормально на localhost, file:// и даже на server.com. Я также добавил свой домен в config.xml.

А теперь код:

Сервер PHP

header("Access-Control-Allow-Origin: *"); 
header('Access-Control-Allow-Methods: GET, POST, OPTIONS'); 

JS

var xhr = new XMLHttpRequest(); 
xhr.open("GET", "http://server.com/api", true); 
xhr.onreadystatechange = function(){ 
    if (xhr.readyState == 4) { 
    if (xhr.status == 200 || xhr.status == 0) { 
     alert(xhr.responseText); 
    } else { 
     alert("NOPE"); 
    } 
    } 
}; 
xhr.send(null); 

config.xml

<access origin="http://server.com"/> 

<preference name="phonegap-version" value="3.1.0" /> 

Любая идея приветствуется,

Cheers!

EDIT

Я перепробовал кучу комбинаций происхождения = "" (например, "", " .server.com", и т.д.)

+0

см. этот ответ: [Phonegap build server не работает белый плагин] (http://stackoverflow.com/questions/33651646/phonegap-build-server-not- рабочий-белый-плагин) – Camaleo

ответ

0

что-то, чтобы попытаться здесь было бы изменить происхождение доступа к

<access origin="http://server.com/*"/> 


Я имел эту проблему на некоторых приложений PhoneGap и ч elped, чтобы добавить это * в конце ...

+0

Я просто попробовал это, не повезло. – cristianbote

+0

кажется, что до 3.x синтаксис включал в себя * в конце, но это уже не так. @xnamex, вы можете сделать тест с доступом origin = "*", даже если это не то, что вы хотите в конце, это поможет увидеть, связано ли это с этим параметром. – QuickFix

+0

@QuickFix Я пробовал это, прежде чем задавать вопрос. Я должен был упомянуть об этом. Редактирование – cristianbote

Смежные вопросы