2017-04-12 2 views
0

CloudManager/NoSQLデータベースにHTTP GETを使用すると、現在Origin http://localhost:3000 is not allowed by Access-Control-Allow-Origin.エラーが発生しています。GETリクエスト用ヘッダーの設定 - 角度2 Observable/Promise

Access-Control-Allow-Origin: *を設定すると、localhostのGETリクエストが許可されることになりますが、特にヘッダーを設定するための角度2のドキュメントはありません。

async getData(): Promise<IPost[]> { 
    return this._http.get(this._postUrl) 
     .toPromise() 
     .then(this.extractData) 
     .catch(this.handleError); 
} 

IPost[]extractData()が実行された後に返されるオブジェクトです。

ご迷惑をおかけして申し訳ございませんが、ありがとうございます。

+2

このヘッダーは、Angularアプリケーション内ではなく、サーバー上で設定する必要があります。 – cgatian

+0

これは、データベースの設定に深く隠されています。ありがとうございました! – Nihir

答えて

0

通常、これはREST APIを呼び出すときに使用します。データは送信する要求オブジェクトです。

const HEADERS = new Headers({'Content-Type': 'application/json'}); 

    this.http.post(ENDPOINT, JSON.stringify(data), {headers: HEADERS}) 
      .map(this.extractData) 
      .subscribe(
      payload => { 
          //do some operation or set values with payload 
         } 
     ); 

これはポストコール用です。 GET呼び出しを使用する場合は、角度2の側にヘッダーを設定する必要はありません。ローカルホスト/特定のマシンに対する要求を許可するのは、バックエンド側でのみ必要です。

関連する問題