我正在尝试在Vapor中创建一个自定义密码验证器。
我好像不知道如何使火柴起作用。

最佳答案

原版由问题作者在问题本身中作为答案发布。
文档可以在这里找到https://vapor.github.io/documentation/guide/validation.html

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)
    }

}

关于swift - Vapor 快速自定义验证器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40728145/

10-11 06:04