일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- CSS
- frontend
- 리액트
- Component
- CLONE
- pug
- heroku
- graphQL
- Mongoose
- MongoDB
- DART
- nodejs
- node.js
- ECMAScript
- express
- clonecoding
- TypeScript
- form
- 자바스크립트
- HTML
- react
- NextJs
- JavaScript
- javscript
- backend
- API
- ES6
- Session
- GRID
- Flutter
- Today
- Total
Enjoy Programming
[Apollo] apollo client - multiple backend endpoint config 본문
최근 업무중에 한 곳의 서비스에서 다른 서비스의 backend api를 호출할 일이 생겼다.
rest api라면 endpoint를 설정해서 해주면 되고 apollo를 쓰지 않았다면 graphql request나 별도의 패키지에
endpoint를 설정해줬으면 되었겠지만...
apollo client를 사용하는 서비스라서 client하나에 새로운 endpoint를 설정해줘야 했다.
현재 서비스 내부에서는 wslink && httpLink를 생성해서 사용하고 있는데
검색 좀 해보니 http link를 또 생성해서 context로 구별 하라고 하더라..
이렇게 신규 링크를 생성해주고
이렇게 apollo client 객체 생성할때 링크에 apollo 에서 제공하는 split함수와 함께 operation에서 context를 가져와 구분해서 link를 치도록 해주면 된다
사용법은 아래처럼 그냥 apollo hook사용시 context에 clientName을 담아서 보내주면 새로 추가한 third party endpoint로 연결 할 수가 있다.
물론 뭐 연결만 한다고 끝나는건 아니고.. 작성하기 귀찮은 schema type을 전부 복사해와줄 apollo codegen이... 해당 endpoint용으로 만들어져 있지 않아서... 이 부분은 할 수 있을지 확인해봐야 한다.
안되면 graphql codegenerator라도 설치해서 진행 해보던지...
그나저나 apollo code generator가 deprecate 된다 하니 저기 서비스도 교체 작업을 해줘야 겠다...
'GraphQL' 카테고리의 다른 글
[Apollo] Multiple lazy query - 쿼리 요청 여러번 보내기. (0) | 2022.12.10 |
---|---|
[Apollo] useLazyQuery & fetchPoricy (0) | 2021.10.09 |
[Apollo] apollo codegen 에서 env사용하기. (0) | 2021.10.09 |