之前有使用过微软的ASP.NET/ASP,可以通过Global.asax(global.asa)文件的Session_Start和Session_End事件来侦听Session的创建和销毁动作。 但在PHP和Node.js里就没有这样的机制。
想了解一下,Node.js里是如何实现的。
还有,如果将Session通过Mongoose存储在MongoDB里(如下方代码所示),interval: 120000需要怎样理解?这里所说的120秒的过期时间是如何起算的?是闲置120秒(120秒内没有向服务器提交任何新的请求),还是说无论页面是否闲置,120秒后就一定过期?个人有疑虑,感觉Node.js的会话机制与ASP.NET有所不同。尤其是将会话存储在MongoDB或是Redis这样的NoSQL数据库时,系统应该很难感知到用户会话会因闲置过久而超时过期。
还有,存储在MongoDB里的Session如何在MongoDB里进行查询?
var connect = require('connect'); var SessionStore = require("session-mongoose")(connect); var store = new SessionStore({ url: "mongodb://localhost/session", interval: 120000 });
个人是新手,对Node.js了解的实在太少,也不知我的问题有没有描述清楚,还望各位能不吝赐教。 多谢!!!