vapor swift自定义验证器
我正在尝试在Vapor中创建自定义密码验证程序。 我似乎不知道如何让比赛成功 最初由问题作者在问题本身中作为答案发布 文档可以在这里找到vapor swift自定义验证器,swift,validation,passwords,vapor,Swift,Validation,Passwords,Vapor,我正在尝试在Vapor中创建自定义密码验证程序。 我似乎不知道如何让比赛成功 最初由问题作者在问题本身中作为答案发布 文档可以在这里找到 导入蒸汽 类密码验证:ValidationSuite{ 静态函数验证(输入值:字符串)抛出{ //1个上部1个下部1个特殊1号,长度至少为8 设regex=Matches(“^(?=.[A-Z])(?=.[A-Z])(?=.[!@$&*))(?=.[0-9])。{8}$”) /* let evaluation=Matches.validate(regex) 尝
导入蒸汽
类密码验证:ValidationSuite{
静态函数验证(输入值:字符串)抛出{
//1个上部1个下部1个特殊1号,长度至少为8
设regex=Matches(“^(?=.[A-Z])(?=.[A-Z])(?=.[!@$&*))(?=.[0-9])。{8}$”)
/*
let evaluation=Matches.validate(regex)
尝试评估。验证(输入:值)
*/
让evaluation=onlyaphanumeric.self
&&计数最小值(8)
&&匹配项。验证(匹配项)
尝试评估。验证(输入:值)
}
}
最初由问题作者在问题本身中作为答案发布
文档可以在这里找到
导入蒸汽
类密码验证:ValidationSuite{
静态函数验证(输入值:字符串)抛出{
//1个上部1个下部1个特殊1号,长度至少为8
设regex=Matches(“^(?=.[A-Z])(?=.[A-Z])(?=.[!@$&*))(?=.[0-9])。{8}$”)
/*
let evaluation=Matches.validate(regex)
尝试评估。验证(输入:值)
*/
让evaluation=onlyaphanumeric.self
&&计数最小值(8)
&&匹配项。验证(匹配项)
尝试评估。验证(输入:值)
}
}
loganwright在slack上帮助我找到了很好的解决方案,但请将您的解决方案作为答案发布(不在您的问题中)。谢谢。我在slack上得到了loganwright的帮助,找到了很好的解决方案,但请将您的解决方案作为答案发布(不在您的问题中)。谢谢
import Vapor
class PasswordValidation: ValidationSuite {
static func validate(input value: String) throws {
// 1 upper 1 lower 1 special 1 number at least 8 long
let regex = Matches("^(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$&*])(?=.*[0-9]).{8}$")
/*
let evaluation = Matches.validate(regex)
try evaluation.validate(input: value)
*/
let evaluation = OnlyAlphanumeric.self
&& Count.min(8)
&& Matches.validate(Matches<regex & value>)
try evaluation.validate(input: value)
}
}