2017-05-13 23 views
4

プロジェクト1:MVCアプリケーション:同じドメインで、別のホストでローカルストレージトークンを共有するにはどうすればよいですか?

だから私は、私は通常のコントローラを使用しています。ここポート3000でホストされている彼らはmyDomain.comに移動したときに、ユーザーがに着陸なり、通常のネットコアMVCアプリケーションを持っていますこのアプリケーションの中で、ユーザはログインすることができ、その時点でJWTトークンが返され、ローカルストレージに格納される。また、ユーザーポータル(ポート3001でホスト)にも移動します。このMVCアプリケーションは、私のユーザーポータル

プロジェクト2用APIコントローラが含まれます:SPAアプリ(ユーザポータル):

ユーザポータルは、基本的に反応し使用して別々のクライアントSPAプロジェクトは上のホストされるされますポート3001は独自の別ノードjsサーバーを持ち、ポート3000でMVCプロジェクトAPIを呼び出します。

私の問題はどうやってこの2つのポートにログイントークンを保持できますか?これも可能ですか?このアーキテクチャは理にかなっていますか?あなたがこのトピックで提供することができるすべての読み物は非常に高く評価されるでしょう。

答えて

2

ウェブサーバーの前に単純なリバースプロキシを配置します。あなたはセットアップがIISでリバースプロキシまたはちょうどnginxのを使用することができます

myDomain.com/application1 --> reverse proxy to port 3000 
myDomain.com/application2 --> reverse proxy to port 3001 

または

app1.myDomain.com --> port 3000 
app2.myDomain.com --> port 3001 

:その後、同じドメインの下に2つのページを提供することができます。

+0

を支援やや単純です。私は地元の開発のためにどうすればいいですか? –

+0

ローカル開発では、IIS Expressでローカルリバースプロキシを設定できます。ドメイン名を使用するには、ホスト名(127.0.0.1 mydomainname.com)に追加するだけです。 –

+0

この答えを選ぶのがやっと終わりました。 IIS Expressは逆プロキシをサポートしていないので(ARRはありません)、ローカル開発を行うためにWindows用のnginxを使用することになりました。私はIISのリバースプロキシを使用します。 –

1

セッションストレージのクロスドメインシナリオが必要だと思います。

https://jcubic.wordpress.com/2014/06/20/cross-domain-localstorage/

のIFrame

を使用して、あなたがセッションストレージを共有するために使用することができますトリックについてこの記事会談希望これは私が最後の数日間で自分のサーバー上のIISを使用してリバースプロキシにいくつかの研究を入れている

関連する問題