반응형
Vapor버전 4.0을 기준으로 작성된 게시글입니다!
struct Hello: Content {
var name: String?
}
extension Hello: Validatable {
static func validations(_ validations: inout Validations) {
validations.add("name", as: String.self, is: .count(3...))
}
}
app.get("validation") { req -> String in
try Hello.validate(query: req)
let name = try req.query.decode(Hello.self).name!
req.logger.info("validation test")
return name
}
구조체에 Validatable프로토콜을 채택해주고
validations를 구현해주면 해당 조건에 만족하지 않는다면 응답에 실패했다고 반환되는 기능이에요
위의 코드에서는
name값으로 길이가 3이상이아니면 에러가나도록 설정해논 코드에요
조건으로는
여러가지를 설정할 수 있구요
반응형
'iyOmSd > Title: Vapor' 카테고리의 다른 글
[Vapor] Schema CRUD 데이터베이스 테이블 수정 (0) | 2021.03.06 |
---|---|
[Vapor] MySQL 연동 및 데이터 CRUD (Fluent) (0) | 2021.03.06 |
[Vapor] Routing (경로 설정, Data받아오기) (0) | 2021.03.06 |
[Vapor] 프로젝트 기본설정 및 설치 (2) | 2021.03.06 |