Ho una macchina virtuale in esecuzione localmente costruita utilizzando Vagrant. Sono in grado di arricciare e andare all'URL direttamente dal browser. Per qualche ragione, quando faccio la stessa chiamata nella mia app nativa per il test usando l'API fetch
, continua a darmi l'errore Network request failed
.Impossibile effettuare chiamate API utilizzando nativa react
Ecco un frammento del codice:
fetchData() {
this.setState({ isLoading: true });
var baseURL = 'https://192.168.33.33/api/session';
console.log('URL: >>> ' + baseURL);
fetch(baseURL)
.then((response) => response.json())
.then((responseData) => {
console.log(responseData);
})
.catch(error => {
console.log(error);
})
.done();
}
Il registro baseURL
ci restituisce il diritto URL e l'errore si presenta in questo modo:
URL: >>> http://192.168.33.33/api/session
TypeError: Network request failed {stack: (...), message: "Network request failed"}
message: "Network request failed"
stack: (...)
get stack: function() { [native code] }
set stack: function() { [native code] }
__proto__: Error
ho pensato che potrebbe essere stato un problema con la mia VM non essendo accessibile in qualche modo dalla mia app, quindi sono andato avanti e l'ho implementato su un server reale e ha comunque dato lo stesso errore.
Qualche idea?
'https: // 192.168.33.33/api/session' può richiedere qualche tipo di intestazione sulla richiesta di richiesta? – lyjackal
@lyjackal Io non la penso così, tutto il codice è questo: http://d.pr/n/18BiU/3kXPWHcD –
Se si utilizza l'oggetto XMLHttpRequest invece di recuperare, si ottiene lo stesso errore? CORS è configurato correttamente? – user2943490