GraphQL(13)
-
GraphQL의 토큰 만료 응답 관리
GraphQL을 사용한지는 몇년이 지났지만, 토큰 인증을 사용할 때 토큰의 만료응답을 주기 위해서는 항상 NetworkError를 고집했었습니다. 즉 HTTP STATUS에서 401을 응답하기 위함이었습니다. 하지만 Apollo의 공식 문서를 보면 UNAUTHENTICATED 가 이미 Error Codes로 정의되어 있는 것을 볼 수 있습니다. https://www.apollographql.com/docs/apollo-server/data/errors/#error-codes Error handling Making errors actionable on the client and server www.apollographql.com GraphQL에서는 굳이 삽질하지 말고 GraphQLError로 반환하라는 그..
2021.05.14 -
[GraphQL] ObservableQuery with this id doesn't exist
Apollo Graphql Client 모듈을 사용하던 중 다음과 같은 오류를 접하는 경우가 종종 있습니다. ObservableQuery with this id doesn't exist 위 오류는 React Hooks 또는 Vue/Nuxt의 @vue/apollo-composable이나, @nuxtjs/apollo 등의 apollo client를 사용하는 모든 모듈에서 제공되는 fetchMore 즉 페이지 네이션을 쉽게 하기 위한 graphql client의 기능을 사용하던 중 발생하는 오류입니다. 하지만 지금 말씀드린 내용은 어디서 발생하는지를 언급한 것이며, 원인은 이러한 이유 때문은 아닙니다. 즉 언제나 그렇듯 모듈이 문제가 아니라, 사람! 사용자가 문제라는 것이죠. Dirty Solution 다른 ..
2020.12.18 -
#01. go-graphql 시작하기
본문은 시리즈로 작성되는 내용입니다. Go Version은 1.15.6으로 진행되었습니다. go get github.com/graphql-go/graphql go get github.com/graphql-go/handler 먼저 graphql-go/graphql, graphql-go/handler를 install 합니다. 설치가 다 되었다면, 대충 main.go 파일을 만들어서 코드를 작성합니다. // main.go package main import ( "github.com/graphql-go/graphql" "github.com/graphql-go/handler" "net/http" ) func main() { fields := graphql.Fields{ "hello": &graphql.Field{..
2020.12.16 -
#02. Go - gqlgen 프로젝트 설정하기
https://gmyankee.tistory.com/301 #01.Go - GraphQL 알아보기 서론 Go언어를 사용하는 Gopher 여러분들은 상당히 다수 존재하는 반면에, Graphql은 아직까지도 한국어로 된 자료가 많지 않으며, GraphQL 대다수의 자료는 JS가 부동의 1위를... 저도 언어를 3가지를 �� gmyankee.tistory.com 이전에 알아본 graphql중에서도 gqlgen을 강조하였기에 당연히 gqlgen을 사용할 것이며, 사실 제가 gqlgen말고 다른건 안써봤습니다! gqlgen 공식 Github 99designs/gqlgen go generate based graphql server library. Contribute to 99designs/gqlgen develop..
2020.06.01 -
#01.Go - GraphQL 알아보기
서론 Go언어를 사용하는 Gopher 여러분들은 상당히 다수 존재하는 반면에, Graphql은 아직까지도 한국어로 된 자료가 많지 않으며, GraphQL 대다수의 자료는 JS가 부동의 1위를... 저도 언어를 3가지를 사용하지만 graphql은 JS로 처음 접근했었습니다. 왜냐고요? JS밖에 자료가 없었거든요... 그 이후 Prisma라는 걸 알게 되었고 Prisma 자체의 한계점에 부딪혀 Prisma2를 접근했고... Prisma2의 자체의 또 한계점을 알게 되어 삽질하다가 결국 Django + Grahpql이라는 방법을 채택했었죠. 심지어 gqlgen은 2020.05.31 기준 현재까지도 대충 gqlgen을 키워드로 검색했을 때 단 1개도 존재하지 않아서 많은 안타까움을 자아냈습니다... 저도 처음에..
2020.05.31 -
Nuxt.js + Apollo GraphQL Sitemap.xml 만들기
Nuxt.js와 Apollo GraphQL Client를 사용하는 Front End Server에서 사이트맵(Sitemap)을 만드는 방법을 소개하고자 합니다. @nuxtjs/sitemap @nuxtjs/sitemap Automatically generate or serve dynamic sitemap.xml for Nuxt.js projects www.npmjs.com 위 라이브러리를 이용하면 굉장히 쉽게 사용할 수 있습니다. 방식은 지난 https://gmyankee.tistory.com/291 Nuxt + Apollo Graphql => Generate로 SSR/SEO 적용하기 목차 서론 Promise를 반환하는 함수 Callback을 반환하는 함수 Graphql로 SSR Generate 하기 서론..
2020.04.18