我在node.js上使用快速会话来存储用户会话。我已经部署到一个AWS EC2实例,当我直接通过HTTP调用它时,它可以工作。为了使ec2实例使用HTTPS,我使用AWS CloudFront,但是不再通过快速会话设置我的客户端cookie。
由于我的SSL证书位于ACM上(不允许我下载它),所以我不能仅使节点服务器直接使用HTTPS。
快速会话中间件如下所示。我可以正确设置HTTPS请求吗?
let sessionMiddleware = session({
store: new redisStore({
client: redisClient,
ttl: 365*24*60*60
}),
saveUninitialized: false,
resave: false,
secret: "Shh, its a secret!",
cookie: {
httpOnly: false,
secure: true,
expires: new Date(Date.now() + 365 * 24 * 60 * 60 * 1000)
}
});
答案 0 :(得分:1)
我通过将快速会话中间件的代理标志设置为true来解决此问题。希望这对某人有帮助。