使用sailsjs 进行REST 验证的挂钩

Posted

技术标签:

【中文标题】使用sailsjs 进行REST 验证的挂钩【英文标题】:Hook for REST validation with sailsjs 【发布时间】:2016-08-23 16:06:08 【问题描述】:

我需要为我的 REST 服务创建一个验证层,我正在使用sailsjs。

有人知道我该怎么做吗?

我尝试创建一个钩子,但我无法访问路由定义,并且在启动策略之前调用了该钩子:'(

方式如下图所示。

【问题讨论】:

【参考方案1】:

在将请求传递给控制器​​之前使用策略对请求进行预处理是非常好的。策略不仅仅用于身份验证和 acl。它们用途广泛,您可以将它们用于任何事情。

例如

policies/beforeUpdateTicket.js

module.exports = function(req, res, ok) 
    TicketService.checkTicket(req.params.id, null, true).then(function(ticket) 
        # You can even modify req.body
        req.body.checked = true;
        return ok();
    ).fail(function(err) 
        # Don't go to the controller, respond with error
        return res.send(JSON.stringify(
            message: 'some_error'
        ), 409);
    );
;

【讨论】:

谢谢兄弟 :-) 为你 +1 :-D

以上是关于使用sailsjs 进行REST 验证的挂钩的主要内容,如果未能解决你的问题,请参考以下文章

在 Sailsjs 中使用本地护照时无响应

Sailsjs 基于 jwt 令牌的身份验证示例

我如何在sailsjs上使用jwt检查用户是不是是管理员

如何在sailsjs上检查用户是否使用jwt管理员

JaaS 可以用于 Rest 吗?

使用操作挂钩创建自定义Wordpress REST API端点