【发布时间】:2017-10-29 01:30:00
【问题描述】:
我正在制作一个使用 Socket.io 在服务器和客户端之间传递信息的 web 应用程序,例如登录信息。 passport.authenticate 的文档说要像这样使用它:
app.post('/login', passport.authenticate('local', { successRedirect: '/',
failureRedirect: '/login' }));
但是,我的 webapp 使用 Polymer 客户端路由,所以我的 index.js 的唯一路由是这样的:
app.get('*', function (req, res) {
res.sendFile('./public/index.html', {root: '.'});
});
相反,我想做这样的事情:
io.on('connection', function(socket){
socket.on('login', function(data){
passport.authenticate('local', data);
});
});
但是,这不起作用,因为身份验证函数现在甚至都没有被调用。有没有办法让护照在这种情况下工作?
【问题讨论】:
标签: express socket.io polymer passport.js passport-local