2014-11-06 103 views
0

我有一个phonegapp应用程序,连接到托管在heroku上的API。我使用Codio和Canary作为我的模拟器。当我加载谷歌浏览器开发工具来查看我的应用程序,它连接比我看在网络选项卡;它给了我这3个错误;定义在Phonegap中访问外部域

(index):98 GET http://pinball-spring.codio.io:35729/livereload.js?snipver=1 net::ERR_CONNECTION_TIMED_OUT 

(index):1 XMLHttpRequest cannot load http://venuetoronto.herokuapp.com/api/v1/neighbourhoods. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://pinball-spring.codio.io:8100' is therefore not allowed access. 

(index):1 XMLHttpRequest cannot load http://venuetoronto.herokuapp.com/api/v1/search/meta. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://pinball-spring.codio.io:8100' is therefore not allowed access. 

我已经通过的PhoneGap /阿帕奇/科尔多瓦文档看,和它说白名单为一个域(这是我认为我正在试图做的);进入config.xml文件并显示这个;

<!-- 
    Define access to external domains. 

    <access />   - a blank access tag denies access to all external resources. 
    <access origin="*" /> - a wildcard access tag allows access to all external resource. 

    Otherwise, you can specify specific domains: 
--> 

<access origin="http://127.0.0.1*"/> <!-- allow local pages --> 

<!-- 
    <access origin="http://phonegap.com" /> - allow any secure requests to http://phonegap.com/ 
    <access origin="http://phonegap.com" subdomains="true" /> - same as above, but including subdomains, such as http://build.phonegap.com/ 
    <access origin="http://phonegap.com" browserOnly="true" /> - only allows http://phonegap.com to be opened by the child browser. 
--> 

Image of the emulator screen

回答

0

尝试添加此:

<access origin="http://pinball-spring.codio.io" /> 

<access origin="http://venuetoronto.herokuapp.com" /> 
0

我也是在这种情况下四天左右,直到我终于找到一个解决。 我知道你会一直看到它在不同的地方有编辑您的config.xml文件:

<access origin="*" /> 

但无论出于何种原因,这并没有为我工作,直到我以上更改为:

<access origin=".*" /> 

而且一切都开始正常工作; -ajax能够访问外部主机 -links外部网页也打开 最后,这里是为我

<?xml version="1.0" encoding="UTF-8" ?> 
<widget xmlns = "http://www.w3.org/ns/widgets" 
    xmlns:gap = "http://phonegap.com/ns/1.0" 
    id   = "com.sucep.app" 
    versionCode = "10" 
    version  = "1.0.0" > 


<name>App Name</name> 
<description> 
    My description 
</description> 

<author href="http://tormuto.com" email="[email protected]"> 
    Tormuto 
</author> 

<access origin="*" /> 
<access origin=".*" /> 
<icon src="icon.png" /> 

<gap:config-file platform="android" parent="/manifest"> 
    <uses-permission name="android.permission.ACCESS_NETWORK_STATE" /> 
</gap:config-file> 

<gap:config-file platform="android" parent="/manifest"> 
    <uses-permission name="android.permission.INTERNET" /> 
</gap:config-file> 

<gap:plugin name="com.simplec.plugins.network" /> 
<gap:plugin name="org.apache.cordova.inappbrowser" version="0.5.2" /> 
</widget> 
工作过的配置文件