問題タブ [cookie-session]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
7909 参照

node.js - ブラウザに登録していないエクスプレスでクッキーセッションを更新する

次のように、機能するログインテストを設定しました。

ルートとユーザー ロジックは、私の問題とは無関係だと思うので省略しますが、必要に応じて喜んで共有します (非常に小さいため、概念の小さな証明を実行するためだけです)。 .

ログインが機能し、セッションが機能し、セッション値に基づいてテンプレートがレンダリングされます。 私の問題は maxAge/expires にあります。問題がどこにあるのかわかりませんが、説明してみます。

ログインすると、セッションが で保存passport.jsされ、正しく保存さRedisStoreれ、セッションを指す Cookie がブラウザに返されます。後続のリクエストでは、Cookie が正常に検出され、 my からの正しいセッションを指していますSessionStorereq.session.cookieUPDATEDexpiresを表示し、私のredisサーバーでは、TTL が 10 分 (600) にリセットされます。

私の問題は、Cookie がブラウザー (Chrome、Windows、および Mac) で同じ有効期限にとどまることです。

だから私の質問は:どうすればこれをさらにデバッグできますか? req.session が (によってexpresspassportおよびconnect-redis内部的に/自動的に) 更新されるので、問題がどこにあるのか、これを修正するにはどうすればよいのか疑問に思っています: Cookie は最初の maxAges/expires のままです。

ヒント、ポインタ、またはアイデアをいただければ幸いです。

0 投票する
2 に答える
1534 参照

node.js - Express.js で connect-redis を使用できない

私は Express.js を勉強していて、cookie-session モジュールを使用してセッションを処理する方法を学びました。Express-Session を使用しようとしていますが、問題があります。

以前は、express-session の代わりに cookie-session を使用していましたが、memoryStore は完全に機能していました。ただし、connect-redis は cookie-session で使用できませんでした。そのため、express-session をインストールしましたが、それではストアも memoryStore も Redis も使用できません。

Redis DB は redistogo にあり、その URI は次のようになります: (セキュリティのためにマスクされていますが、これは練習のためだけです) ****f4bb@albacore.redistogo.com:10072/

ただし、「node app」を実行すると、エラーが出力されます。

私のpackage.json:

「npm ls」は次を示します。

私のapp.js:

「node app」の実行時に表示されたエラー:

どのセッション モジュールを使用すればよいですか? そして、どうすればRedisでセットアップできますか?

0 投票する
0 に答える
699 参照

javascript - Express.js で Cookie セッションを共有する

2 つの Express.js アプリで同じセッション Cookie を共有しようとしています。両方のアプリ構成で同じシークレットと同じキー ID を設定しています。次に、それらを同じドメイン (異なるポート) で実行します。

両方のアプリの app.js には次のものがあります。

理論的には、セッション Cookie に対して同じ値を共有する必要があります。私が見ているのは、アプリを切り替えるとすぐに、Cookie「express.sid」の値が変化することです。

何か不足していますか?

0 投票する
0 に答える
281 参照

javascript - IE11キャッシングexpress.jsクッキーセッションを克服するには?

ログに記録されたユーザー セッションを保存するために、express.js cookie-sessionを使用しています。新しいユーザーにサインインするたびに、現在のセッションに userId を配置し、この userId を DB で作成した user._id に割り当てます。

最終的に、新しいユーザーがログイン フォームを送信すると、ユーザー データを含む get リクエストが /user restful サービスに送信され、そのデータ (識別子) が DB に保存されていない場合、新しいユーザーが DB に登録されます。そして、彼のために新しいセッション Cookie が作成されます。

上記の機能を chrome、firefox、IE11 でテストしました。chrome/firefox を使用している場合、ログイン後の応答コードは 200 で、送信されたユーザーは UI によって挨拶されます。ただし、IE11 を使用する場合、最初に送信されたユーザーは UI によって挨拶されますが、別のユーザーが送信されたときは挨拶されません。どうやら IE11 は、dev でフラグをオンにしない限り、最初にログインしたセッション Cookie (応答コード 304) をキャッシュします。コンソールですがalways refresh from server、これはブラウザのデフォルトのオプションではありません。

0 投票する
1 に答える
980 参照

playframework - Play Cookie セッションで遊ぶ

セッション(Cookieセッション)に値を設定すると、以下のようにクライアントからその値を確認できます

Firefox リクエスト Cookie

ただし、 javascript で Cookie を取得しようとすると、取得できるのdocument.cookieはこれだけです

ここに画像の説明を入力

PLAY_SESSION Cookieを取得するにはどうすればよいですか?

0 投票する
1 に答える
83 参照

node.js - ノード Expresss.js の cookie-session の使用方法

モジュールを のように変更しない限り、express-session は本番環境で動作する準備ができていないためcookie-sessionredisStorageを使用することにしました。

ドキュメントは私にはあまり明確ではないようです。それは言う

その他のオプションは cookies.get() と cookies.set() に渡されます

  • 何がcookiesありますか?
  • 必要なオプションを設定するために を使用する必要があるというsetことですか?

私は cookieSession をexpress-sessionとして使用しようとしていましたが、それはうまくいかないようです:

0 投票する
1 に答える
282 参照

node.js - Node.jsのcookie-sessionがセッションを設定していません

これは私に大きな頭痛の種を与えています.CSRF Coo​​kieは正しく機能していますが、何かが壊れているようで、セッションを開始できません. どんな助けでも大歓迎です。

編集: 言及するのを忘れていましたが、Nginx からのすべてのリクエストを HTTPS で受け入れるノード サーバーに転送するリバース プロキシ サーバーとして Nginx を使用しています。