node.JS - 表达框架创建会话并检查会话是否存在

时间:2011-04-24 07:48:21

标签: session node.js express

这是我的服务器代码,请查看代码中的注释。

var app = express.createServer();
app.get('/', function(req, res){
    // create a session with the value of an email for example: me@gmail.com
});

// down here I want to check the session if the session exist
if( there is a session with value me@gmail.com){
    //do stuff  
}

1 个答案:

答案 0 :(得分:2)

在Connect / Express中实现会话的方式不允许自定义会话ID。这部分是因为安全。所以你可以做很多事情。

  • 将所有内容存储在会话中。在某个地方(可能在数据库中)创建一个将电子邮件地址映射到会话ID的索引,这样您就可以通过电子邮件查找会话。

  • 仅在会话中存储电子邮件。将实际会话数据保存在其他位置(可能在数据库中),您可以通过电子邮件地址获取它。

  • 创建您自己的会话中间件,可能基于Connect的代码。 Connect中的实际会话代码仅为300行。但要非常小心,保持安全功能不变。