Apollo Server는 에러가 발생하면 그 응답에 errors
배열을 준다. 그리고 이때 배열의 각 원소는 extensions
라는 객체를 갖고 있는데 해당 객체는 code
라는 필드의 각 에러의 이름을 갖고 있다. 이것들은 모드 ApolloError
객체들이다.
어떤 에러들이 있는지는 여기를 참조)
https://www.apollographql.com/docs/apollo-server/data/errors
그렇다면 만약 Apollo Server가 자체적으로 발생하는 에러가 아니라 리졸버에서 직접 에러를 던지게 만들면 어떻게 될까? 이렇게 되면 자동으로 해당 에러가 ApolloError
객체들로 변환이 되고 extensions
객체가 자동으로 설정된다.(code 값은 INTERNAL_SERVER_ERROR로 설정됨)