일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- https://joshua1988.github.io/web-development/javascript/promise-for-beginners/
- https://goodgid.github.io/HTTP-Communicate-Process/
- https://sewonzzang.tistory.com/22
- https://appmaster.io/ko/blog/rest-apiran-mueosimyeo-dareun-yuhyeonggwa-eoddeohge-dareungayo
- https://siyoon210.tistory.com/130
- https://jcon.tistory.com/189
- https://aws.amazon.com/ko/docker/
- https://joshua1988.github.io/web-development/javascript/js-async-await/
- https://subicura.com/2017/01/19/docker-guide-for-beginners-1.html
- https://hi-zini.tistory.com/entry/%EB%B9%84%EB%8F%99%EA%B8%B0%EC%A0%81-%EB%B0%A9%EC%8B%9D-%EC%B2%98%EB%A6%AC-%EB%B0%A9%EB%B2%95-Callback-Promise-async-await
- Today
- Total
“Connecting the dots”
REST-API VS GraphQL-API 본문
REST API 란?
REST 는 HTTP 프로토콜을 통해 API 를 설계 하기 위한 아키텍처 이다 그래서 개발자는 서버에서 직접 웹 어플리케이션이나 사이트의 사용자에게 데이터를 제공해야 하는 모든 곳에서 REST API 를 사용한다
REST API 의 주요 구성요소
고객-통신을 시작하는 사용자 측 (자신의 장치에서 ) 시작된 클라이언트 또는 프로그램
섬기는 사람 - API 를 기능 및 데이터에 대한 엑세스로 사용하는 서버
자원-서버가 클라이언트에 전송하는 모든 컨텐츠(비디오,텍스트,사진)
REST API 작동 방식
REST API 는 HTTP 요청읉 통해 통신하요 데이터 생성 ,읽기,업데이트 및 삭제 기능 사용
POST -리소스 생성
GET --- 리소스 가져오기
PUT ---리소스 업데이트
DELETE - 리소스 삭제
구조
일반적으로 API 는 앱 대 앱 형식을 따르는 반면 REST 는 다른 구조 (클라이언트-서버) 클라이언트와 서버는 독립적으로 발전
GraphQL-API
어플리케이션 레이어 쿼리 언어이다 GQL은 Structed Qurery Language 와 마찬가지로 쿼리 언어이다
+SQL은 데이터베이스 시스템에 저장된 데이터를 효율적으로 가져오는 목적
+GQL은 웹 클라이언트가 데이터를 서버로 부터 효율적으로 가져오는 목적
SQL은 문장은 주로 백엔드 시스템에서 작성하고 호출하는 반면, GQL은 문장은 주로 클라이언트 시스템에서 작성 -->> 호출
GQL즉, API를 위한 쿼리 언어 타입 시스텝 서버사이드 런타임 ,
GQL은 위에서 설명한 것처럼 REST API의 한계를 극복하고자 나왔다
장점
+클라이언트가 필요한 데이만 변환
+1번의 호출로 원하는 데이터를 한번에 가져온다
단점
+백엔드,클라이언트 개발자 양쪽 다 러닝커브가 있다
+단순한,서비스에서는 사용하기가 복잡
+대부분의 언어에서 라이브러리로 제공
+캐싱 기능의 구현이 복잡
정리
GQL은 REST API 한계점을 해결 API를 위한 쿼리 언어 이다
GQL은 클라이언트가 서버로 부터 데이터를 효율적으로 가져오는것 목적
'1주차' 카테고리의 다른 글
"Git " , "Hoisting" , "Scope" (0) | 2022.11.19 |
---|---|
HTTP 통신 (0) | 2022.11.19 |
Template Literals ++ (0) | 2022.11.19 |
Destructuring Assignment ( 구조분해할당) ++ (0) | 2022.11.19 |
1주차 (0) | 2022.11.16 |