본문 바로가기

CodeTech/GraphQL

(3)
GraphQL- 3 [서버 생성 (nodemon, babel-node,Schema, Resolver, Get, Post, Playground ] nodemon - 코드를 수정하고 서버를 재시작 하는 과정이 귀찮다면 이 패키지를 사용하면 된다. - 이후 코드를 조금이라도 수정하면 알아서 서버를 재시작 해준다. yarn global add nodemon scripts를 추가해주고 yarn start index.js 파일에 뭔가를 적고 수정이 된다면 해당 파일을 저장하는 순간 이렇게 서버가 재실행된다. (react app에서 도 그랬던거 같은데..?) 리액트 앱에서도 nodemon은 없지만 변경시 재시작 되는 react-scripts start 명령어가 nodemon 대신 들어가 있는 것을 확인 할수 있다. babel-node - 일반적인 node.js에서 eslint가 적용되지 않을 때 (예: require대신 import를 적용해서 하고 싶을때) ..
GraphQL - 2 [Over-fetching, Under-fetching, Query] Over-fetching - 클라이언트가 데이터를 요구할 때 원하는 영역의 요구보다 훨씬더 큰 영역의 데이터를 받아와서 가공하는 형식 - console.log 쳐가지고 해당 클래스를 구분해서 써야함. 굉장히 비효율적임 Under-fetching - 예를 들어 앱을 실행할 때 로그인을 하려면 사용자명, 비밀번호, 프로필등을 데이터 베이스에서 받아와야 하는데 하나의 기능 (로그인)을 하려고 3가지의 요청을 해야한다는 것이다. 이것을 한 요청을 묶어서 할수 있음에도 3가지 요청을 해서 하나의 기능을 만족시키는 것이 under-fetching이다. Query - 데이터 베이스에 데이터를 요청하는 문장이다. - 즉, 클라이언트가 데이터를 받을 때만 사용가능하다. query { feed: [ { comments l..
GraphQL - 1 [yarn init, graphql-yoga] GraphQL(gql) - 서버사이드 언어로서 백엔드와 클라이언트간의 소통을 원활하게 해준다. - Rest API의 상위 호환이라고 봐도 된다. - 즉, 기존의 API와 graphql을 연결해서 클라이언트와 graphql로 통신하는 것인데, 클라이언트와 서버를 연결시켜서 사용하면서 불편했던 점들을 개선해 놓은 것이 바로 graphql이라서 중간 다리 역할을 놓아 불편했던 점을 완화시키는 작업을 한다. (기존에는 이러한 서버사이드를 RestAPI로 사용하였는데 이 REST API를 grapql로 wrapping해서 사용하는 것도 가능하다) - SQL(Structed Query Language) 과 같이 쿼리 언어이다. - 하지만 언어 구조적으로 큰 차이가 있다. SQL은 백엔드에서 데이터베이스에 저장된 데..