カテゴリー

【サーバーサイドAngular】AngularでビルドしたWebアプリでExpress.jsからCORSプロキシを設定する


※ 当ページには【広告/PR】を含む場合があります。
2022/03/22
蛸壺の技術ブログ|AngularでビルドしたWebアプリでもCORSできるようにプロキシ設定する

前の回では、Angularのローカル開発環境からdevサーバー(webpack-dev-server)を立ち上げて、プロキシルートで外部のオリジンへアクセスする方法を紹介しました。

合同会社タコスキングダム|蛸壺の技術ブログ
Angularアプリ開発の同一オリジンポリシーエラー対策 〜 CORS(オリジン間リソース共有)できるプロキシールートを設定する

Angularアプリのローカル環境での開発に便利なCORSを簡単に実現できる独自のプロキシルートの設定方法を解説します。

Angularアプリ開発中はそれでも良かったのですが、開発が進んで、Angularアプリをビルドして、プロダクトをリリースする段階になったときに、
yarn startコマンドを卒業しないといけないタイミングもあるでしょう。

この場合、Angular標準のプロキシルートの設定からもおさらばして、プロダクトで利用するサーバーサイド側のプロキシ設定に従う必要があります。

今回はExpressでもプロキシルーティングを実現するための方法を解説していきます。


合同会社タコスキングダム|蛸壺の技術ブログ【効果的学習法レポート・2022年版】Angular(JSフレームワーク)をこれから学びたい人のためのオススメ書籍&教材特集

Angular側のビルド

では前回のプロキシルーティングの構成をもう一度おさらいしておきます。

合同会社タコスキングダム|蛸壺の技術ブログ

プロキシルートの構成は前回と共通とします。

AngularでプロダクトビルドしたWebアプリケーションであっても、結局はブラウザから使うことには変わりありませんので、同一オリジンポリシーのルールが課させることには違いありません。

AngularのプロダクトSPAを準備する

とりあえず通常のビルドでAngularのSPA(シングルページアプリケーション)を生成します。

            $ yarn build --configuration production --build-optimizer true --aot true
        
なおAngularのビルドを細かいビルドオプションはangular.jsonに記述していれば、ビルドオプティマイザやAOTコンパイラをコマンド引数でONにする必要はないのですが、ここらへんは個人的な趣向です。

ng buindコマンドからプロダクト出力を制御したい場合には、以前の記事で説明していたことを試してみてください。

合同会社タコスキングダム|蛸壺の技術ブログ


            
        
            
        
            
        

記事を書いた人

記事の担当:taconocat

ナンデモ系エンジニア

主にAngularでフロントエンド開発することが多いです。 開発環境はLinuxメインで進めているので、シェルコマンドも多用しております。 コツコツとプログラミングするのが好きな人間です。

カテゴリー