2017-10-03 5 views
0

Node/ExpressバックエンドでAngularアプリケーションがあります。私はちょうどInternet Explorer(11)でそれをテストし、認証に奇妙なバグに気づいた。Internet Explorer(ノードバックエンド)で複製するCookie

ある時点で、Json WebトークンにCookieの形で格納されている認証の詳細が更新されます。クロームでは、同じ名前の新しいクッキーを設定するだけで、うまく動作します。しかし、IEで私はそれが新しいクッキーを使用していなかった発見し、それが実際に2を格納していたが見つかりました:

enter image description here

の両方が同じ名前を持っています。それらは同じコードで、同じドメインで提供されます(2番目のサブドメインはホストされていますが、このサイトとは関係ありません)。クッキーの設定

は単純です:クッキーパーサーを使用して

response.cookie('jwt', token, { maxAge: 60 * 60 * 48 * 1000, httpOnly: true }); 

他のすべての質問は、これがサブドメインに関する問題であることを示唆しているようです。しかし、私はそれを指定/設定する方法を見ることができませんか?

これは、開発時にローカルでホストされた状態で正常に動作しますが、本番環境で展開するとこの問題が示されます。

答えて

0

設定したときにクッキーのドメインを空白のままにして明示的に設定して解決しました。 C:\Windows\System32\Drivers\etc\hostsでWindowsホストファイルに

127.0.0.1 mydevdomain.com 

:Internet Explorerが完全にlocalhost上のクッキーを無視するように見えたので、

しかし、私は、行を追加設定する必要がありました。

Cookieを設定するには、domain: 'mydevdomain.com'オプションを使用します。これは、開発時および本番運用時(ドメインを本番ドメインに更新する)に期待どおりに動作します。

関連する問題