【发布时间】:2014-12-23 05:18:58
【问题描述】:
我在摆弄sails.js 和护照。看来它们可以一起使用。
我已经在 de db 中提供了用户模型。而且我可以使用 bcryptjs 的身份验证。这可行,但非常希望自动验证每个调用,主要是 socket.io 蓝图调用。
不过,我仍在寻找一种优雅的方法来启用sails.js 集成护照的方式。 例子很多,但是好像有点过时了,不确定。
重要的是套接字。他们需要经过身份验证。
例如每个 io.socket CRUD 方法,都会很好。
亲切的问候
我找到了一个链接 (http://www.bearfruit.org/2014/07/21/tutorial-easy-authentication-for-sails-js-apps/),它为我指明了正确的方向,但仍不清楚这如何反映在例如控制器中
我要管理的是在调用自定义 api 调用之前对其进行身份验证(在 routes.js 中或通过蓝图进行配置)。
例如:
订单控制器:
module.exports = {
placeOrder: function (req, res) {
if (true === req.isSocket) {
// Pseudo code:
if (passport.authenticated(['user','admin'])) {
Order.save();
}
// end pseudo code
}
}
}
上述方法应该/如何保护,我可以在这里使用例如用户角色吗?
【问题讨论】:
-
检查sails 101 中的sails 护照示例:github.com/sails101/using-passport 对于更复杂的(使用插件)检查我的项目we.js 如何使用sails 0.10.x 挂钩扩展sails.js。 github.com/wejs/we-example 中的示例
标签: session socket.io sails.js passport.js