所以我有一个应用程序,我正在使用npm子域,因此常规快速路由伪造为子域路由。
// use fake subdomain routes
app.use(subdomain({ base : 'localhost', removeWWW : true }));
// this looks like app.localhost:9200/login
router.get('/subdomain/app/login', login.login);
// then this posts to app.localhost:9200/app_login
router.post('/subdomain/app/app_login', passport.authenticate('local-login', {
successRedirect : '/app_login_success',
failureRedirect : '/app_login_failure',
failureFlash : true
}));
当我通过app.localhost:9200
登录时,我必须重新登录localhost:9200
登录一次并在两个路由中激活会话有哪些选项和解决方案?
您可以使用JSON Web令牌(JWT),这是一种处理本地身份验证的相当标准的方法。 实质上,您将创建一个包含用户凭据(例如ID)的编码令牌,该令牌将在一段时间后自动过期。 您的两台服务器都可以解码此令牌。 然后在您的前端,您只需要在发送到任一域时将标头设置为包含此标记。 请参阅JWT NPM模块 ,您可以在Passport旁边找到无数的指南。