Ste*_*her 8 javascript mysql node.js express angularjs
我现在有一个节点服务器正在运行,我用npm forever它来保持它在我不开发时运行,我在npm nodemon编辑时使用它(在编辑/上传时重新启动应用程序).
我注意到每当我重新启动应用程序时,会话数据都会丢失,我的玩家必须重新登录他们的帐户.这不是一个huuuge交易,但我想知道是否有办法编辑我的server.js页面而不重新启动应用程序,并记录每个人?
(请注意,这仅适用于server.js或模块编辑..html并且服务的.js页面不需要重新启动)
(第二个注意:我正在使用mysql,nodejs,angularjs,express.io这一切,以防万一有人问)
没有办法编辑文件(并加载更改),而无需重新启动服务器并重新加载文件.相反,将会话数据存储在内存以外的其他位置.我知道你正在使用MySQL,所以使用connect-mysql包(对于redis,MongoDB等,还有其他类似的包).
就像把它放在你的app.js文件中一样简单:
var MySQLStore = require('connect-mysql')(express)
, options = {
config: {
host : 'place.stuff',
user: 'RUJordan',
password: 'hunter2',
database: 'SomeKittensIsGreat'
}
};
app.use(express.session({
secret: 'UpvoteThisAnswer',
store: new MySQLStore(options),
cookie: { maxAge: 2592000000 } // 30 days
}));
Run Code Online (Sandbox Code Playgroud)
这将在每个用户的计算机上放置一个仅限HTTP(即用户无法查看/使用它)cookie.即使在服务器重启之后,connect-mysql也能够通过此cookie在MySQL中使用其会话数据的用户.
| 归档时间: |
|
| 查看次数: |
720 次 |
| 最近记录: |