显然,在使用浏览器等时,使用 cookie 来存储 session ID 是最有意义的,但我使用 Sails 只是为了构建我的 RESTful API,并且我想使用 header (X-Session-Identifier或其他东西)向 Sails 提供 session ID(这也可以作为响应中的 header 返回,这样我就知道要再次发送什么)。
我认为我需要编写一些中间件,但我在文档中找不到可以连接的任何地方。
我需要删除 connect 的 cookieSession 中间件并将其替换为我自己的吗?
最佳答案
Sails.js 0.9.x
这没有在任何地方记录,但您应该能够通过执行以下操作向底层 Express 对象提供自定义中间件:
config/express.js
var sessionware = require('mycoolmiddleware');
modules.exports.express = {
customMiddleware: function (app) {
app.use(sessionware.sessionHeader());
}
};
Sails.js 在这里处理这个:https://github.com/balderdashy/sails/blob/v0.9.16/lib/express/index.js#L162
Sails.js 0.10.x
从 Sails.js 0.10.x 开始,他们现在记录了如何在此处提供自定义中间件:http://sailsjs.org/#/documentation/concepts/Middleware
关于javascript - 如何在 Node 的 Sails.js 中使用 header 作为 session key 而不是 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17899179/