2017-08-15 11 views
0

Ich bin ein Problem haben, wenn ich meine JSON in nativer App Reagieren erhalten.Reagieren india Networking JSON Antwort

Ich bin eine einfache Abrufanforderung zu tun, um es

getApplicationList() 
{ 
    return fetch('http://192.168.X.X/index.php') 
     .then((response) => response.json()) 
     .then((responseJson) => { 
      return responseJson; 
     }) 
     .catch((error) => { 
      return 'There has been a problem with your fetch operation: ' + error.message; 
     }); 
} 

aber wenn ich ein console.error(getApplicationsList()); in der Funktion machen zu machen, ich bin ein sehr bizarres Protokoll auf dem Android-Emulator bekommen:

console.error: {"_40":"0","_65":"0","_55":"null","_72":"null"} 

in meiner PHP-Datei, ich bin eine JSON-codierte Antwort zurückgibt, und wenn ich meine URL (mit ‚localhost‘) im Navigator ich es bekommen kann.

Wenn ich die App über den Emulator starte, ändere ich die localhost Adresse mit meiner Computer-IP, und wenn ich diese URL in den Browser eintippe, bekomme ich eine Cannot GET /index.php Antwort. Ich weiß nicht, ob es in Ordnung ist, und ich fühle mich ein wenig verloren zwischen all dem.

Vielen Dank für Ihre Hilfe

+0

es ist, weil 'fetch' ein Versprechen zurück. legt den console.error innerhalb der zweite .then() Funktion und rufen Sie die Methode innerhalb machen 'this.getApplicationList()' – Raymond

+0

ich einen console.error in der zweiten .then put(), aber nichts auf dem Emulator angezeigt. Es scheint, dass es nicht durch ... – Koko

+0

try Konsole gehen, um Ihre Antwort Protokollierung und/oder 'response.json()' – MattyK14

Antwort

0

ich eine Lösung gefunden ein echtes Android-Gerät mit:

ich dies folgte einen neuen Anschluss für das Gerät zu machen: Connect an Android Device To a Web Service on Local Host (die Antwort der Navigator Einstellungen Chrome)

und dann machte ich meine HTTP-Anforderung in der App mit dem Port der IP-Adresse meines Computers mit mir in diesem Link eingegeben hat. Und es hat funktioniert.