2016-07-09 20 views
11

Seguo un'eccezione, quando cerco di connettermi all'API remota utilizzando anguar2 http. Anche il mio server web sta ricevendo la richiesta e risponde correttamente.ECCEZIONE: Risposta con stato: 0 per URL: null in angular2

Sono in grado di eseguire una richiesta di arricciamento sul server locale.

EXCEPTION: Response with status: 0 for URL: null 

service.ts

getAllProducts(): Observable<string> { 
     return this.http.get(this.productUrl) 
     .map(this.extractData) 
} 

private extractData(res: Response) { 
    let body = res.json(); 
    console.log(body) 
    return body.data || { }; 
} 
+0

Non sicuro, ma provare a farlo se funziona .. Chang> 'Osservabile su Osservabile ' e 'return body.data || {} per restituire il corpo || {} ' – micronyks

+0

Senza fortuna, ottenendo sempre la stessa eccezione. Credo che questo sia qualcosa a che fare con la risposta che sto ricevendo dal server – Asif

risposta

2

auguriamo che questo aiuta qualcuno.

Il problema era con la definizione della risorsa. Quando sto cercando di connettersi alla risorsa remota utilizzando angular2 http.get, mi stavo seguente errore

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at … 

FIX:

Come sto usando flask-restful per costruire API a distanza, sotto correzione risolto il mio problema

from flask_restful.utils import cors 
from flask_restful import Api 

api = Api(app, decorators=[cors.crossdomain(origin='*')]) 

codice sorgente completo sarà disponibile qui: inventory-manager

+0

Where is 'Api'? Quale libreria devo importare? –

+0

È necessario importarlo dal pacchetto flask-restful come questo 'da flask_restful import Api', puoi controllare il codice sorgente completo qui https://github.com/asifpy/inventory-manager – Asif

+0

Buddy, hai detto in questione che tu Stai provando ad accedere al tuo server, ma non hai usato cors, perché? Hai implementato il blocco della richiesta di origine incrociata sul tuo server? Amico ho fatto il mio server API (media dell'applicazione) con express ma ottenendo lo stesso errore, senza fortuna – blackHawk

4

ho avuto lo stesso errore con un app MEAN2. Tutto quello che dovevo fare era installare il middleware CORS e usarlo con express.

+0

Ottenendo lo stesso errore installato e utilizzato middleware cors, senza fortuna, potresti dare un esempio funzionante – blackHawk

+0

ottenendo lo stesso errore con cosa? Dovresti pubblicare una nuova domanda con il tuo codice. –

+0

domanda già postata, date un'occhiata http://stackoverflow.com/questions/41144243/err-connection-closed-exception-response-with-status-0-for-url-null?noredirect=1#comment69491176_41144243 – blackHawk

3

Problema di server non disponibile, potrebbe essere CORS o server andato giù.

+2

Questa non è una risposta particolarmente utile, considerando che la domanda è stata posta 8 mesi prima e ha già accettato risposta. – Claies

+0

@Claies, Sebbene abbia una risposta accettata, la domanda è piuttosto più generica! E la risposta accettata potrebbe non risolvere il problema per ogni utente che visita. –

+0

@AshishRanjan forse, ma questo non fornisce una risposta o una soluzione praticabile. Questa è una teoria, ed è un commento al meglio. – Claies

Problemi correlati