본문 바로가기
GraphQL

REST와 GraphQL

by kicksky 2021. 3. 8.

REST:

- 서버가 브라우저에게 제공하는 인터페이스를 사용하는 방법. 서로 다른 웹 어플리케이션이 공통으로 사용 가능.

- 리소스 기반 ( 예: /users/10 ) - 리소스에 대한 작업은 해당 URL에 대한 HTTP 요청들로 이루어진다.

 

상황 #1

소셜 미디어 기능이 있는 어플리케이션. 블로그 리스트를 보여주고 싶은데, 내가 팔로우하는 블로그 중에서 유저들이 코멘트를 남긴 글만 보고 싶은 경우

- HTTP 요청 여러번 해야함

- 불필요한 데이터도 받게 됨

- 브라우저 코드 복잡해짐

GraphQL:

- 브라우저의 코드가 원하는 데이터에 대한 query를 작성하고, 이를 HTTP POST 요청으로 API로 보내기. 

- 모든 GraphQL 쿼리는 동일 주소POST 된다.

 

query FetchBlogsQuery {
  user(username: "mluukkai") {
    followedUsers {
      blogs {
        comments {
          user {
            blogs {
              title
            }
          }
        }
      }
    }
  }
}

 


fullstackopen.com/en/part8/graph_ql_server

'GraphQL' 카테고리의 다른 글

Fullstack Part 8 #5 Fragments and subscriptions  (0) 2021.03.12
Fullstack Part 8 #4 Login & Cache update  (0) 2021.03.11
Fullstack Part 8 #3 DB  (0) 2021.03.10
Fullstack part 8 #2 React and GraphQL  (0) 2021.03.09
Fullstack Part 8 #1 GraphQL-server  (0) 2021.03.08

댓글