web-dev-qa-db-fra.com

EXCEPTION: réponse avec le statut: 0 pour l'URL: null dans angular2

Je reçois l'exception suivante lorsque j'essaie de me connecter à une API distante à l'aide de http anguar2. Mon serveur Web reçoit également une demande et répond correctement.

Je peux faire une demande de curl réussie au serveur local.

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 || { };
}
11
Asif

J'espère que cela aidera quelqu'un.

Le problème était lié à la définition des ressources. Lorsque j'essaie de me connecter à une ressource distante à l'aide de angular2 http.get, J'obtenais l'erreur suivante

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

RÉPARER:

Comme j'utilise flask-restful pour construire une API distante, le correctif ci-dessous a résolu mon problème

from flask_restful.utils import cors
from flask_restful import Api

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

Le code source complet sera disponible ici: inventaire-gestionnaire

2
Asif

J'ai eu la même erreur avec une application MEAN2. Tout ce que j'avais à faire était d'installer le middleware CORS et de l'utiliser avec express.

4
steady_daddy

Problème de serveur non disponible, peut-être CORS ou le serveur est tombé en panne.

4
Kenadet