当前位置: 首页 > 面试题库 >

使用NodeJS和ExpressJS为域而不是subDomain设置cookie

郭均
2023-03-14
问题内容

我一直在使用expressjs和mongostore进行会话管理。以下是在expressjs中配置存储的代码,

app.configure(function(){
    app.use(express.session({
        secret: conf.secret,
        maxAge: new Date(Date.now() + 3600000),
        cookie: { path: '/' },
        store: new MongoStore(conf.db)
    }));
});

我在上面的代码中提到了cookie路径。但是它将cookie设置在sub.domain.com而不是.domain.com中。我该如何实现?


问题答案:

像这样配置它:

app.use(express.session({
    secret: conf.secret,
    cookie: { domain:'.yourdomain.com'},
    store: new MongoStore(conf.sessiondb)
}));


 类似资料:
  • 当我试图发布我的联系表单时,我收到一个控制台错误,即我的Lambda、SE、API网关、Cloudfront备用源配置不能从子域“www.example.com”运行,而它可以从“example.com”运行。我如何允许联系表单避免多个(子)域上的任何问题?控制台中的错误告诉我以下信息: “跨源请求被阻止:同一源策略不允许读取https://example.com/rest/contact.中的远

  • 我一直在寻找开源项目国际化的选项: > Gettext,似乎每个人都推荐,显然需要在您的系统上安装区域设置才能使用。请参阅PHP手册上的此注释,它正好反映了我的情况。这个SO问题也问了同样的问题。这不适合开源项目,因为我不能相信最终用户在他们的系统上安装了适当的区域设置。此外,这是非常非常奇怪的,你必须安装区域设置只是为了使用字符串,你已经翻译(IMO)。 Zend_Translate有时也建议支

  • 问题内容: 我希望能够在同一域下托管多个NodeJS应用程序,而无需使用子域(例如google.com/reader而不是images.google.com)。问题是我总是在Express / NodeJS中键入URL的第一部分,例如“ / reader”。 如何设置Express应用程序,使基本URL为? 所以代替: 我可以: 我还想将Connect的staticProvider配置为以相同的方

  • 问题内容: 我们都知道Java在(被认为是“常用” )范围内为数字缓存(以及一些其他类型)。 缓存的设计如下: 我知道可以通过为JVM提供参数来扩展值: 我不明白的是为什么我们不允许覆盖该值? 请注意,我并不是想找到一种解决方法,而是要理解为什么出于某些晦涩的原因而不允许这样做。 问题答案: 发现对此已经存在未解决的RFP。 乔·达西(Joe Darcy)对这个问题发表了评论: 可以想象也可以缓存

  • 我们有一个使用node js(express js)构建的web应用程序,它位于nginx后面。 对于特定的API,我们希望将内容类型响应头设置为“text/plain”。控制器中有以下代码。 res.setHeader('Content-Type','text/plain');res.send(响应); 当服务器不在nginx后面时,这是有效的。但是当服务器在nginx后面时,响应头仍然是“应用