REST-API vs GraphQL-API

정희준·2023년 3월 20일
0
post-thumbnail

REST-API vs GraphQL-API

현재 가장 많이 사용되는 API의 종류이며 두 API의 차이점을 알아보자

api 호출 방식

Rest-api는 api의 이름이 홈페이지 주소 처럼 생겼고 이를 endPoint라 한다
graphql-api는 평소 우리가 사용하던 일반적인 함수와 동일하다


응답 결과

이 부분이 가장 큰 차이점이라고 생각이드는데
rset-api는 응답 결과로 back-end 개발자가 만든 함수에서 보내주는 모든 데이터를 받아야만 하고
graphql-api는 back-end 개발자가 만든 함수에서 필요한 데이터만 골라 받을 수 있다

그렇기 때문에 graphql-api가 필요한 데이터만 골라 받을 수 있기때문에 더욱 효율적인 통신이 가능하다!
하지만 그렇다고 rest-api를 무시 할 순 없다
왜냐 현재 it시장에서 가장 많이 사용되었고 오래되었기때문에 rest-api를 사용할줄 모르면 안된다!


CRUD

API는 크게 4가지 방식으로 구분할 수 있습니다.

새로운 것을 생성하는 API ⇒ CREATE
기존의 것을 조회하는 API ⇒ READ
기존의 것을 수정하는 API ⇒ UPDATE
기존의 것을 삭제하는 API ⇒ DELETE

그런데 이는 Rest 방식인지 GraphQL 방식인지에 따라 다르게 사용됩니다.

axios와(rest-api), apollo-client(graphql-api)는 프론트에서 api를 요청할때 사용되는 모듈이다


관련 도구

Postman/Swagger, Playground API를 연습하고 또 실행시킬 API에 대한 설명을 볼 수있게 해주는 프로그램들이다
API를 사용하는 방식에 따라 나뉘게 된다

서버를 띄우기 위해선
rest-api는 express를 사용하고 api명세서를 위해서는 swagger-ui-express,swagger-jsdoc을 활용 할 수 있고
graphql-api는 @apollo/server, graphql을 활용해 서버와 api명세서를 동시에 사용 할 수 있다

profile
같이 일하고 싶은 사람이 되어보자! 다시 시작하는 개발 블로그.

0개의 댓글