2015-04-23 6 views
36

Quindi, ho clonato il repository dell'applicazione tutorial da ionic. Mi sono imbattutoLe richieste ioniche restituiscono 404 solo su Android, in Chrome funziona bene

ionic start conference sidemenu 

e poi ho aggiunto un semplice $ http.get ('myserver') (ho provato con ngResources troppo).

Ha funzionato perfettamente su chrome, ho ottenuto tutti i dati indietro ma su angolare ho solo dati nulli e lo stato 404 su qualsiasi richiesta che ho provato a fare.

Nota: ho provato con il mio server ospitato e con uno locale. Entrambi falliscono su Android. Il server è un'API REST node.js.

Nulla viene stampato sulla console, quindi la richiesta non arriva nemmeno al server.

Qualcuno l'ha provato o potrebbe dirmi come posso eseguire il debug di app Android create con Ionic?

EDIT 1: I don `t so perché ne hai bisogno ma qui è

$http.get('http://server.com/route').success(function (data) { 
      //handle success 
     }).error(function (data, status) { 
      // handle error 
     }); 
+0

si prega di aggiungere del codice riferendo il tuo servizio e come lo chiami con angolare. – aorfevre

risposta

85

Il fatto è che ci sono stati alcuni cambiamenti importanti a Cordova 4.0.0:

Principali modifiche [...] - funzionalità Whitelist è ora fornita tramite plug-in (CB-7747) Il whitelist è stato migliorato per essere più sicuro e configurabile L'impostazione di Content-Security-Policy è ora supportata dal framework (vedi dettagli nel file readme del plugin) Sarà necessario aggiungere il nuovo plug-in plug-in-plug-in-plug-in cordova-whitelist. disponibile tramite plugin (sebbene non consigliato).

Così ho installato il Cordova Whitelist plugin. E aggiunto

<allow-navigation href="http://*/*" /> 

nel mio file config.xml.

+5

Grazie. Ho cercato questa soluzione più di 2 giorni. Non riesco a capire perché la Cordova non lanci un'eccezione se l'origine dell'accesso non è definita. – redrom

+2

Ho scoperto che dovevo aggiungere anche un meta tag Content-Security-policy, come per http://stackoverflow.com/a/30209484/498949 –

+2

Ho upvoted perché mi ha dato sicuramente la spinta nella direzione di cui avevo bisogno, la correzione funziona, ma ovviamente doveva ancora adattarla per non andare all in con un jolly. Per ragioni di sicurezza, ovviamente. –

0

Il contenuto locale si dovrebbe, quando Cordova compilazione è una cartella www, che ci sono attività e altra cartella per implementare l'apk o equivalente iOS

cioè

<img src="assets/images/{your-file-name}"> 
Problemi correlati