web-dev-qa-db-ja.com

例外:URLのステータス:0の応答:angle2のnull

Anguar2 httpを使用してリモートAPIに接続しようとすると、次の例外が発生します。また、私のWebサーバーはリクエストを受信し、適切に応答しています。

ローカルサーバーへのcurlリクエストを成功させることができます。

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

これが誰かを助けることを願っています。

問題はリソース定義にありました。 angular2 http.getを使用してリモートリソースに接続しようとすると、次のエラーが発生しました。

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

修正:

flask-restfulを使用してリモートAPIを構築しているため、以下の修正により問題が解決しました

from flask_restful.utils import cors
from flask_restful import Api

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

完全なソースコードはこちらから入手できます。 inventory-manager

2
Asif

MEAN2アプリでも同じエラーが発生しました。 [〜#〜] cors [〜#〜] ミドルウェアをインストールして、エクスプレスで使用するだけでした。

4
steady_daddy

サーバーが利用できない問題、CORSまたはサーバーがダウンした可能性があります。

4
Kenadet