問題タブ [connect-mongo]

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 投票する
2 に答える
141 参照

node.js - セイルサーバーのセッションを再起動するたびに、セッションをデータベースに保存する方法が期限切れになりましたか?

過去2日間から、私はこの問題に直面しています。再起動するたびに、Sails サーバー セッションが期限切れになり、すべてのユーザーがログアウトされました。これから克服する方法はありますか?Sails doc を確認しましたが、セッションをデータベースに保存できませんでした。

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

node.js - Node.js - Express Session、Connect Mongo、および MongoDB

私が作成しているウェブサイトの別々の部分にいくつかのmongoデータベースがあります。これらのデータベースの 1 つはセッション用です。Connect Mongo を使用してセッションをデータベースに保存しています。ユーザー用に作成したモデルを参照する ObjectId をセッションに保存できないようです。しかし、セッションを読むと、オブジェクトではなく、保存した ObjectId を取得するだけです。私はすでにstringifyをfalseに変更しました。Connect Mongoでこれを行うことは可能ですか?

私はすでにスキーマを作成し、そのスキーマをセッション変数に保存して、参照したユーザー オブジェクトが返されるかどうかを確認しました。このコードを以下に含めました。

そして、これを使用するために私は持っています:

wheretoUser._idが提供され、既存の user _id フィールドです。

ユーザーを参照するにはセッションが必要なので、ノードがデータベースからセッションを照会すると、ユーザーオブジェクトも引き戻されます。

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

mongodb - エクスプレスセッションとコネクトモンゴのセットアップ

私は使用しており、セッションを永続的に保存express-sessionするために使用したいと考えています。connect-mongo私はドキュメントといくつかのチュートリアルを見て、それがどのように機能するかをほとんど理解していますが、最初にmongoDBインスタンスのセットアップが必要だと思うので、connect-mongo接続するものはありますか?

私が見たいくつかの例では、localhost でテスト用の mongoDB に接続していますが、これは mongoDB を標準としてインストールしてからそのインスタンスを使用する場合にすぎませんか?

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

node.js - Connect-mongo エラー: モジュール 'mongodb/node_modules/bson' が見つかりません

この質問を書く前に、ほぼ同じエラーについて他の質問を読んでいましたが、その質問は2013年から2014年のものであり、解決策は機能しません.ElementaryOS(Ubuntu 14.04)を使用しています。

OpenShiftサーバーにアップロードされるnodejsアプリでセッションを管理したいので、セッションストレージの代替を検索した後、connect-mongo読んだときにセッションをmongodbコレクションに保存することがわかりました。私も を使用してexpress-sessionsいますが、アプリを実行すると、次のエラー メッセージが表示されます。

私はセッションとそれらを保存するのが初めてなので、何が起こっているのか、セッションストレージをどのように正しくセットアップするのか本当にわかりません。本当に助けが必要です。誰かがこれを修正する方法を教えてくれたらとても感謝しています。ここに私のpackage.json依存関係があります:

そしてconfigurate.js、ミドルウェア、ルート、およびデータベース接続をセットアップする私のファイルは次のとおりです。

server.js必要に応じて私のファイル:

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

node.js - 1 つの Express アプリにログインすると、他の (同じサーバー) のセッションが破棄される

MongoDB インスタンスを共有する、同じサーバー マシン (異なるポート) で実行されている 2 つの個別の Express 4.x アプリがあります。どちらも異なるデータベースを使用し、異なるセッション シークレットを持っています。

アプリケーション A または B に問題なく個別にログインできます。私のセッションは維持されており、すべて順調です。ただし、A にログインしてから B にログインすると、A のセッションは破棄されます (逆も同様です)。

両方のアプリケーションのローカル認証はほぼ同じです。彼らのserializeUserdeserializeUserは非常に原始的です(ほとんどティーまでパスポートのドキュメントに従います)。

A にログインすると Breq.session.passportが破棄req.userされ、アプリ A で正しくシリアル化されず、セッションが無効と見なされるようです。

私は、両方のアプリが同じマシン (つまりドメイン) で実行され、ポートだけが異なるという事実に関係していると考え始めています。

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

node.js - connect-mongo の設定方法

「connect-mongo」ノード モジュールを使用してセッション データを mongodb に保存しています。

以下は、connect-mongoの構成に関連する私のコードです

ユーザーがブラウザからルート「/」URL に接続すると、データベースにレコードが挿入される

私の質問は

  1. originalMaxAge 、「セッション」の期限切れキーが null であり、これらのキーに値を持たせるために何を変更する必要があるのはなぜですか?

  2. autoRemoveInterval を 1 分に設定したので、データベースからのセッション値が 1 分で削除されると想定していましたが、そうではありませんでした。