概述
go 里通用的值驗證器。
地址: https://github.com/go-playground/validator
roadmap
- 看demo:https://github.com/go-playground/validator/blob/v9/_examples/simple/main.go
- 了解下大概原理,知道有哪些功能, 詳細文檔: https://godoc.org/gopkg.in/go-playground/validator.v9
- todo
相關注意點
常見類型驗證
- 驗證值:
validate.Var("xxx@mail.com", "required,email") - 驗證struct:
err := validate.Struct(user),user 是個struct 實例,struct的聲明中,必須有tag說明驗證規(guī)則。demo
驗證后的返回值
語句err := validate.xxxx(user)進行驗證,返回值的處理順序參考demo, 返回結果主要有三種:
- nil正常返回值,驗證成功
- InvalidValidationError: 傳遞的參數(shù)不合法,不是要驗證的類型。這個很少需要驗證,一般不會這種錯誤
- ValidationErrors:一個數(shù)組,包含多個驗證失敗的信息