REST-API vs GraphQL-API

middledown12·2023년 3월 20일
1

메모

목록 보기
11/57

오늘의 공부 👍

230315_TIL에서 다뤘던 REST-API와 GraphQL-API를 더 자세하게 알아보겠습니다.

📝 REST-API vs GraphQL-API


  • GraphQL은 REST의 후속 제품으로, Facebook에서 개발했습니다.
  • 사용 사례에 따라 GraphQL 또는 REST API 또는 같이 쓰는 방법을 선택해야 합니다.

📝 REST API


  • REST(Representational State Transfer)는 다양한 데이터 형식을 반환할 수 있습니다.
  • 데이터 형식에는 JSON, XML 및 YAML이 포함됩니다.
  • HTTP 메서드는 서버로 전송되는 요청 유형을 설명합니다.
    • GET - 지정된 소스의 표현을 읽습니다.
    • POST - 지정된 새 소스를 만듭니다.
    • PUT - 컬렉션의 모든 리소스를 업데이트/바꿉니다.
    • PATCH - 소스를 수정합니다.
    • DELETE - 소스를 삭제합니다.
  • 데이터로 작업할 때 REST-API는 HTTP메서드를 사용하여 CRUD(만들기, 읽기, 업데이트, 삭제) 작업을 수행합니다.
  • 가장 일반적인 제한 사항 중 하나는 오버페칭 및 언더페칭입니다.
  • 오버페칭은 필요한 것보다 더 많은 정보를 얻는 것을 의미합니다.

📝 GraphQL API


  • GraphQL은 API용 오픈 소스 데이터 쿼리 및 조작 언어이며, 기존 데이터로 쿼리를 수행하기 위한 런타임입니다.
  • 요청한 원하는 값만 필터링해서 응답한다. (용량이 작아서 가볍고, 빠름)
  • 깃허브, 페이스북 등 글로벌 서비스에서 많이 사용
  • playground는 GraphQL-API를 위한 설명서를 볼 수 있고, 동시에 API를 테스트해 볼 수도 있습니다.

📝 REST-API vs GraphQL-API


출처 : 코드캠프

  • GraphQL과 REST API의 핵심 차이점은 GraphQL은 사양, 쿼리 언어인 반면 REST는 네트워크 기반 소프트웨어의 아키텍처 개념이라는 점입니다.

  • REST는 원하는 정보가 아닌 정보도 같이 봐야하지만, GraphQL같은 경우는 원하는 정보만 가져올 수 있습니다.

  • 위의 내용을 이해하기 쉽게 설명한 사진이 있어 첨부합니다.
    출처:https://hygraph.com/blog/graphql-vs-rest-apis

  • 위 사진을 설명하자면 REST는 먹고싶지 않은 재료도 먹어야하지만, GraphQL은 입맛대로 먹고싶은 재료만 선택해서 먹을 수 있는 것입니다.

  • 이렇게 REST와 GraphQL을 알아보았습니다. GraphQL을 REST의 대안으로 생각 하지 않는 것이 중요합니다.


출처 및 참고
코드캠프

profile
개발자 블로그 / 항상 겸손한 자세로 배우면서 성장하자 할 수 있다!

0개의 댓글