2014-11-06 6 views
0

У меня есть приложение phonegapp, связанное с API, размещенным на геройку. Я использую Codio, а Canary - как эмулятор. Когда я загружаю инструменты google chrome для просмотра моего приложения, он подключается, как я смотрю на вкладке «Сеть»; это дает мне эти 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/апач/Cordova документов, и он говорит, что для белого списка домена (который является то, что я думаю, что я пытаюсь сделать); зайти в файл 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>