【发布时间】:2015-05-09 06:58:30
【问题描述】:
我正在 node.js 中创建简单的网络应用程序,它应该能够将会话数据保存到文件存储中。
为此,我将 express-session 与 session-file-store 模块一起使用:
var session = require('express-session');
var FileStore = require('session-file-store')(session);
app.use(session({
store: new FileStore({
path:'./sessions/',
}),
secret: 'keyboard cat'
}));
但是当我访问我网站的某个页面时,我会成功收到生成的 HTML 文件,但是所有其他的资产请求都将被中止:
当我评论存储属性时,它可以正常工作..但它不会将会话数据保存到文件中。
有人知道,这里有什么问题吗?或者您知道任何其他将会话数据存储到文件中的模块吗?
感谢您的建议..
【问题讨论】:
-
一个最小的测试用例在这里没有问题,所以我猜问题出在其他地方。一种解释可能是该文件夹不可写。我建议您还创建一个文件会话正常工作的最小测试用例,然后逐步添加所有其他路由,直到它中断。
-
感谢您的回答.. 我已经尝试过: - 在会话中间件之前配置静态内容(由于某些磁盘配额限制,别名不会将会话用于静态内容文件) - 然后我指定了完整地址带有 __dirname 的会话文件夹 - 最后一件事:我删除了会话文件夹并重新启动了应用程序。但老实说,我不知道为什么它不起作用。再次感谢。
标签: javascript node.js session express