APIリクエストを別のサーバーにプロキシする方法は? 質問する

APIリクエストを別のサーバーにプロキシする方法は? 質問する

Angular CLIng serveローカル開発サーバーでは、プロジェクト ディレクトリからすべての静的ファイルが提供されます。

AJAX 呼び出しを別のサーバーにプロキシするにはどうすればよいですか?

ベストアンサー1

2022年更新

公式に推奨されているアプローチは、ここで文書化されたもの

2017年更新

より優れたドキュメントが利用可能になり、JSON ベースと JavaScript ベースの両方の構成を使用できるようになりました。angular-cli ドキュメント プロキシ

サンプルの https プロキシ構成

{
  "/angular": {
     "target":  {
       "host": "github.com",
       "protocol": "https:",
       "port": 443
     },
     "secure": false,
     "changeOrigin": true,
     "logLevel": "info"
  }
}

私の知る限り、Angular 2.0リリースでは、.ember-cliファイルを使用してプロキシを設定することは推奨されません。公式の方法は以下のとおりです。

  1. "start"あなたの編集はpackage.json以下をご覧ください

    "start": "ng serve --proxy-config proxy.conf.json",

  2. proxy.conf.jsonプロジェクトのルートにという新しいファイルを作成し、その中に以下のようにプロキシを定義します。

     {
       "/api": {
         "target": "http://api.yourdomai.com",
         "secure": false
       }
     }
    
  3. 重要なのは、npm start代わりにng serve

詳細はこちらからご覧ください:プロキシ設定 Angular 2 CLI

おすすめ記事