問題タブ [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.
node.js - セイルサーバーのセッションを再起動するたびに、セッションをデータベースに保存する方法が期限切れになりましたか?
過去2日間から、私はこの問題に直面しています。再起動するたびに、Sails サーバー セッションが期限切れになり、すべてのユーザーがログアウトされました。これから克服する方法はありますか?Sails doc を確認しましたが、セッションをデータベースに保存できませんでした。
node.js - Node.js - Express Session、Connect Mongo、および MongoDB
私が作成しているウェブサイトの別々の部分にいくつかのmongoデータベースがあります。これらのデータベースの 1 つはセッション用です。Connect Mongo を使用してセッションをデータベースに保存しています。ユーザー用に作成したモデルを参照する ObjectId をセッションに保存できないようです。しかし、セッションを読むと、オブジェクトではなく、保存した ObjectId を取得するだけです。私はすでにstringifyをfalseに変更しました。Connect Mongoでこれを行うことは可能ですか?
私はすでにスキーマを作成し、そのスキーマをセッション変数に保存して、参照したユーザー オブジェクトが返されるかどうかを確認しました。このコードを以下に含めました。
そして、これを使用するために私は持っています:
wheretoUser._id
が提供され、既存の user _id フィールドです。
ユーザーを参照するにはセッションが必要なので、ノードがデータベースからセッションを照会すると、ユーザーオブジェクトも引き戻されます。
mongodb - エクスプレスセッションとコネクトモンゴのセットアップ
私は使用しており、セッションを永続的に保存express-session
するために使用したいと考えています。connect-mongo
私はドキュメントといくつかのチュートリアルを見て、それがどのように機能するかをほとんど理解していますが、最初にmongoDBインスタンスのセットアップが必要だと思うので、connect-mongo
接続するものはありますか?
私が見たいくつかの例では、localhost でテスト用の mongoDB に接続していますが、これは mongoDB を標準としてインストールしてからそのインスタンスを使用する場合にすぎませんか?
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
必要に応じて私のファイル:
node.js - 1 つの Express アプリにログインすると、他の (同じサーバー) のセッションが破棄される
MongoDB インスタンスを共有する、同じサーバー マシン (異なるポート) で実行されている 2 つの個別の Express 4.x アプリがあります。どちらも異なるデータベースを使用し、異なるセッション シークレットを持っています。
アプリケーション A または B に問題なく個別にログインできます。私のセッションは維持されており、すべて順調です。ただし、A にログインしてから B にログインすると、A のセッションは破棄されます (逆も同様です)。
両方のアプリケーションのローカル認証はほぼ同じです。彼らのserializeUser
とdeserializeUser
は非常に原始的です(ほとんどティーまでパスポートのドキュメントに従います)。
A にログインすると Breq.session.passport
が破棄req.user
され、アプリ A で正しくシリアル化されず、セッションが無効と見なされるようです。
私は、両方のアプリが同じマシン (つまりドメイン) で実行され、ポートだけが異なるという事実に関係していると考え始めています。
node.js - connect-mongo の設定方法
「connect-mongo」ノード モジュールを使用してセッション データを mongodb に保存しています。
以下は、connect-mongoの構成に関連する私のコードです
ユーザーがブラウザからルート「/」URL に接続すると、データベースにレコードが挿入される
私の質問は
originalMaxAge 、「セッション」の期限切れキーが null であり、これらのキーに値を持たせるために何を変更する必要があるのはなぜですか?
autoRemoveInterval を 1 分に設定したので、データベースからのセッション値が 1 分で削除されると想定していましたが、そうではありませんでした。