1. REST API에 대해 이해하고, Open API와 API Key에 대해 설명할 수 있다.
2. Postman이 무엇인지 이해하고 활용할 수 있다.
- REST API (Representational State Transfer)
✔︎ 로이 필딩의 박사학위 논문에서 웹(http)의 장점을 최대한 활용할 수 있는 아키텍처로 소개
✔︎ 웹에서 사용되는 데이터나 자원(Resource)을 HTTP URI로 표현
하고, HTTP 프로토콜
을 통해 요청과 응답을 정의하는 방식
✔︎ 레오나르드 리차드슨의 4단계 REST 성숙도 모델
✔︎ REST 성숙도 모델 - 0단계
✔︎ REST 성숙도 모델 - 1단계
엔드포인트(Endpoint)
사용리소스에 집중
해 명사 형태의 단어로 작성✔︎ REST 성숙도 모델 - 2단계
CRUD
에 맞게 적절한 HTTP 메서드를 사용하는 것에 중점GET
메서드 : 서버의 데이터를 변화시키지 않는 요청에 사용 (Idempotent(멱등))POST
메서드 : 요청마다 새로운 리소스 생성 (Non-idempotent(멱등❌))PUT
메서드 : 요청마다 같은 리소스 반환 (Idempotent), 교체 용도PATCH
메서드 : 수정 용도✔︎ REST 성숙도 모델 - 3단계
새로운 링크
를 넣어 새로운 기능에 접근할 수 있도록 하는 것이 중요 포인트✔︎ 누구에게나 열려있는 API
✔︎ 기관이나 API마다 정해진 이용 수칙 존재, 제한사항(가격, 정보제한 등)이 있을 수도 있음
✔︎ 서버의 문을 여는 열쇠
✔︎ 로그인된 사용자에게만 자원에 접근할 수 있는 권한을 API Key형태로 제공
✔︎ 데이터를 요청할 때 API Key를 같이 전달해야 원하는 응답을 받을 수 있음
- Postman
✔︎ 매번 코드를 작성하는 것 대신 HTTP 요청을 테스트할 수 있는 다양한 도구 존재
✔︎ 많은 API가 HTTP 프로토콜 이용
✔︎ 클라이언트 입장에서 서버 API를 테스트하거나, API를 만드는 과정에서 매우 유용
✔︎ curl (대부분의 리눅스 환경에 내장)
✔︎ wuzz
✔︎ Postman
✔︎ Insomnia
☞ 어제부터 해서 쉽지 않은, 깊이 있는 내용들에 대해 학습하고 있다. (HTTP, REST API 등등 ...)
해당 내용들이 어려워서 오늘 과제도 쉽지 않겠구나 생각했는데 다행히 과제는 기본적인 postman 사용법을 익히는 느낌이라 크게 어렵지 않고, 금방 끝내버렸다 :D
어제 하루만 봐서 해당 내용들에 대해 크게 이해를 못했지만, 오늘도 어제와 연결되는 내용이라 생각이 들어 학습하다 보니 조금은 감이 잡히는 느낌이다. (역시 반복이 답인가 ,,,)
이틀만에 네트워크 파트가 슝~하고 지나갔고 내일부터는 데이터베이스에 들어간다 ,, 점점 갈수록 공부할 내용도 많고 힘들어진다는데 밀리지 말고 잘 따라가보도록 해보자 🔥🔥🔥
・ SQL