Node.js 快速创建大量会话

Node.js 快速创建大量会话,node.js,session,express,Node.js,Session,Express,我才意识到这一直在发生 我的堆栈: NodeJS 快车 护照 棱角的 猫鼬 当我登录到我的网站时,我看到创建了集合会话,其中有一条记录(正如人们所期望的那样)。然后,我浏览了一下网站,发现我的会话记录有13条。然后,我再导航一些,我看到它已经超过27 到底发生了什么事?我做了什么导致了这一切 我的主app.js文件如下: var config = require('./config/config.js'); var express = require('express'); var favi

我才意识到这一直在发生

我的堆栈:

  • NodeJS
  • 快车
  • 护照
  • 棱角的
  • 猫鼬
当我登录到我的网站时,我看到创建了集合会话,其中有一条记录(正如人们所期望的那样)。然后,我浏览了一下网站,发现我的会话记录有13条。然后,我再导航一些,我看到它已经超过27

到底发生了什么事?我做了什么导致了这一切

我的主app.js文件如下:

var config = require('./config/config.js');
var express = require('express');
var favicon = require('serve-favicon')
var app = express();
var path = require('path');
var cookieParser = require('cookie-parser');
var session = require('express-session');
var ConnectMongo = require('connect-mongo')(session);
var mongoose = require('mongoose').connect(config.dbURL);
var passport = require('passport');
var FacebookStrategy = require('passport-facebook').Strategy;
var bodyParser = require('body-parser');

app.set('views', path.join(__dirname, 'views'));
app.engine('html', require('hogan-express'));
app.set('view engine', 'html');
app.use(favicon(path.join(__dirname, 'public', '/images/favicon.ico')));
app.use(express.static(path.join(__dirname, 'public')));
app.use(cookieParser());
app.use(session({
    secret:config.sessionSecret,
    store: new ConnectMongo({
        mongooseConnection:mongoose.connections[0],
        stringigy:true,
        touchAfter: 24 * 3600
    }),
    saveUninitialized:true,
    resave:true
}));

app.use(session({secret:config.sessionSecret, saveUninitialized:true, resave:true}));
app.use(passport.initialize());
app.use(passport.session());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

require('./schemas/allSchemas.js')(mongoose);
require('./auth/passportAuth.js')(passport, FacebookStrategy, config, mongoose, moment);

//Main URL router
require('./routes/routes.js')(express, app, passport, mongoose);

app.listen(3000, function(){
    console.log('App is working on Port 3000');
});
我的每一个课程如下所示(如果有任何帮助):

试试这个

var config=require('./config/config.js');
var express=需要(“express”);
var favicon=require('serve-favicon')
var-app=express();
var path=require('path');
var cookieParser=require('cookie-parser');
var会话=需要(“快速会话”);
var ConnectMongo=require('connect-mongo')(会话);
var mongoose=require('mongoose').connect(config.dbURL);
var passport=需要(“passport”);
var FacebookStrategy=require('passport-facebook')。策略;
var bodyParser=require('body-parser');
app.set('views',path.join('views');
app.engine('html',require('hogan-express'));
app.set('view engine','html');
app.use(favicon(path.join(u dirname,'public','/images/favicon.ico'));
app.use(express.static(path.join(uu dirname,'public'));
使用(cookieParser());
use(bodyParser.urlencoded({extended:false}));
use(bodyParser.json());
应用程序使用(会话)({
秘密:config.sessionSecret,
门店:新ConnectMongo({
mongooseConnection:mongoose.connections[0],
斯特林吉:是的,
触摸屏:24*3600
}),
saveUninitialized:true,
resave:是的
}));
app.use(passport.initialize());
app.use(passport.session());
要求('./schemas/allSchemas.js')(mongoose);
需要('./auth/passportAuth.js')(passport、FacebookStrategy、config、mongoose、moment);
//主URL路由器
要求('./routes/routes.js')(快递、应用程序、护照、猫鼬);
app.listen(3000,函数(){
log('应用程序正在端口3000上工作');

});我试了一下。不幸的是,情况并没有太大不同。我浏览了整个网站,找到了15条以上的记录。可能数据库记录有问题,请尝试(在之前删除所有cookie)app.use(session({secret:config.sessionSecret,}));app.use(passport.initialize());app.use(passport.session());在我每次尝试调查之前,我都删除了它们,而且你的方法也加入了。还有其他建议吗?谢谢你的代码看起来没问题,所以我猜问题出在你的passportAuth文件中,或者你安装了一些扩展插件,把你的cookie搞砸了。试着用匿名模式打开你的网站(谷歌浏览器)也试着用匿名模式。还是一样。顺便说一下,我已经编辑了我的帖子,添加了一个会话作为示例。也许我错过了什么?如果你能看一看,我将不胜感激。谢谢
{
"_id": "cSqLjOGJlYBvNLYJ8v6zXqtqzuIcGwbx",
"session": "{\"cookie\":{\"originalMaxAge\":null,\"expires\":null,\"httpOnly\":true,\"path\":\"/\"}}",
"expires": "2017-10-10 22:46:09",
"lastModified": "2017-09-26 22:46:09"
}