我正在制作一个应用程序,用facebook验证用户身份。
我对帆船和护照都很陌生,所以我决定使用这个存储库:https://github.com/stefanbuck/sails-social-auth-example
我忠实地遵循了这个存储库,能够很容易地使用facebook实现登录功能,但是注销功能不起作用。
在routes.js中是:

'/logout' : {
  controller : 'auth',
  action     : 'logout'
}

而在authcontroller.js中是:
logout: function (req, res) {
    req.logout();
    res.redirect('/');
}

当我停止服务器提升时,似乎已完成注销,下次执行命令sails lift,它会警告我:
warn: handshake error No cookie transmitted with socket.io connection.  Are you trying to access your Sails.js server via socket.io on a 3rd party domain?  If you're ok with losing users' session data, you can set `authorization: false` to disable cookie-checking.  Or you can send a JSONP request first from the client to the Sails.js server to get the cookie (be sure it's the same domain!!)

我不知道该怎么处理。
你能告诉我哪里不对劲,我怎么才能成功吗?
帆v0.0.4
护照V0.3.4
Passport Facebook 1.0.0版

最佳答案

我还用了带帆的护照,我的routes.js已经注销为“post”

'post /logout':{
    controller: 'user',
    action: 'logout'
},

我的注销功能是一样的,可以解决你的问题吗?
如果有帮助,这里还有我的观点电话:
<form action="/logout" method="post">
    <input type="submit" value="Log Out"/>
</form>

关于node.js - Sails + Passport:注销将不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18746294/

10-13 08:43