2014-01-21 47 views
0

因此,我试图从Phonegap Android应用程序内部调用我的服务器server.com/api获取一些数据。我通过HTTP Get方法调用它。Phonegap http GET请求返回空字符串

一切工作正常localhost,file://甚至在server.com。我还将我的域名添加到​​3210。

现在代码:

服务器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" /> 

欢迎任何想法,

干杯!

编辑

我也尝试了一堆原产= “”(例如 “组合”, “ .server.com” 等)

+0

请看这个回答: [Phonegap建立服务器不工作白名单插件](http://stackoverflow.com/questions/33651646/phonegap-build-server-not-工作白名单插件) – Camaleo

回答

0

一些尝试这里将更改访问原点

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


我有这个问题上的一些应用程序的PhoneGap和它^ h最后添加*到底...

+0

我只是试过,没有运气。 – cristianbote

+0

似乎在3.x之前,语法最终涉及a *,但事实并非如此。 @xnamex,你可以用访问origin =“*”进行测试,即使这不是你想要的结果,它将有助于查看它是否与此参数相关。 – QuickFix

+0

@QuickFix我问过这个问题之前,我已经试过了。我应该提到这一点。编辑 – cristianbote