gpt4 book ai didi

javascript - 在 SailsJS 中验证请求参数

转载 作者:行者123 更新时间:2023-11-29 21:54:30 27 4
gpt4 key购买 nike

在 SailsJS 中,我想使用与执行模型操作时验证模型时相同的机制来验证请求参数。

因此,当您定义一个模型时,您可以使用“属性”选项来指定您的参数属性,然后将它们用于验证。

但是,如果您想在服务器端验证登录表单或电子邮件表单,那么它不需要模型,您只想验证参数怎么办?

所以我希望能够做这样的事情:

//login validation
req.validate({
email: { required: true, email: true },
password: { required: true }
});

//send email validation
req.validate({
subject: { required: true, type: 'string' },
to: { required: true, type: 'string' },
body: { required: true, type: 'string' }
});

函数 req.validate 混合在所有请求中,如果为请求设置了 req.options.usage 则调用,我玩过一点但我不太明白它在做什么。没有关于此的文档,也没有用于验证的 "anchor" 中的文档。

关于我如何实现这一目标的任何帮助或建议(最好使用一些未记录的 SailsJS 功能)?

最佳答案

Sails req.validate() 用于 Sails 的核心,如果您想在 Controller 中使用它,您必须使用 try catch:

try{
req.validate({
email: { type: 'string' },
password: { type: 'string' }
});
}catch(err){
return res.send(400, err);
}

或者它也可以设置一个 req.flash 错误...查看此文件以获取更多详细信息:

https://github.com/balderdashy/sails/blob/045fc6630fd915dce1abd89844e4164a9276a8cd/lib/hooks/request/validate.js

我正在自己实现此方法,在 v0.11 中使用 npm 安装 Hook 的新功能,migration guide :

https://github.com/Josebaseba/sails-hook-validator

它仍在开发中,但我认为它会在 sails 0.11 到来时准备就绪。

关于javascript - 在 SailsJS 中验证请求参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27167765/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com