type-graphql의 buildSchema

starkensin·2020년 9월 28일
0
post-thumbnail

type-graphql에서 buildSchema 메소드를 사용할 때 여러가지 옵션을 함께 설정할 수 있습니다.

이 옵션들을 모아서 잘 정리된 문서가 없어서 많은 옵션들 중 주로 사용될 법 한 것들 위주로 정리해봅니다.

emitSchemaFile: string | boolean | EmitSchemaFileOptions

true로 하면 ./schema.gql 경로를 디폴트로 스키마 자동생성을 할 수 있게 해주는 옵션입니다.
EmitSchemaFileOptions를 사용하면 주석 여부 및 경로를 설정 할 수 있습니다.

validate: boolean | ValidatorOptions

type-graphql은 class-validator 라이브러리를 built-in 지원 합니다.
validate 옵션의 디폴트 값은 true입니다.
만약 false로 지정하면 인풋과 인자 값을 자동 validation을 하지 않습니다.

authMode: 'null' | 'error'

권한관련 에러 발생시 에러를 보낼지 null을 리턴할지 설정할 수 있습니다.

globalMiddlewares: Array<Middleware<any>>

매번 데코레이터를 써줄 필요 없이 이 곳에다가 미들웨어를 명시해주면 각 리졸버가 호출될 때 명시한 미들웨어를 거쳐갑니다. 흔히 에러 미들웨어가 많이 사용됩니다.

dateScalarMode: 'isoDate' | 'timestamp'
isoDate2012-02-08T08:02:40.358Z와 같은 형식으로 표현되며, 뒤에 붙는 Z는 UTC시간대임을 나타냅니다. 여기에 9시간을 더하면 한국 시간과 일치합니다.
timestamp1970년1월1일 0시0분0초 부터 몇초가 지났는 지를 나타내는 정수로 표현합니다.

0개의 댓글