(CodeStates)Daily memoir
회고록(23) - REST API
테디규
2022. 12. 1. 02:33
1. 데일리 일기
개념들을 엄청 많이 배우면서, 헷갈리기 시작하는 것 같다. 막상 면접본다고 했을때 내가 이 용어를 정확하게 표현할 수 있을까?
아니라는 생각이 든다. 블로그에 하나씩 정리해보면서 정의 - Why(왜 이 기술/개념이 필요한지) - how(어떻게 동작하거나 활용되는지)를 정리해야겠다는 생각이든다. 근데... 시간이 있을지 모르겠다. 정리하게 전에 더 때려넣은 느낌이다.
일단 그래도 특히 중요한 개념들은 블로그에 따로 작성해보려고 하자. 하면서 노션도 정리하고 말이다.
그래도 이런 저런 배경지식이나 전체적인 흐름을 안다음에 정리해야 더 깔끔하게 정리 되기도 하는 것 같다. 정의 계속 읽는다고 이해가 안되는 개념들도 존재하니까 말이다.
2. 오늘 배운 내용
Rest API
REST API란?
정의
- 간단히 말하자면 REST API는 두 컴퓨터 시스템(특히 웹과 서버)이 인터넷을 통해 정보를 안전하고 적절하게 교환하기 위해 사용하는 인터페이스입니다.
- 이러한 인터페이스는 웹에서의 리소스를 URI로 표현하고, 리소스가 동작하는 방식을 CRUD 로직에 맞게 HTTP 메서드로 구현하여 REST 아키텍처에 따라 설계할수 있습니다.
왜 REST API 로 설계하나할까?
- 클라이언트 입장에서 적절한 API 호출을 통해 원하는 데이터를 얻을 수 있다.
- 무상태성을 만족하면서 리소스 식별이 가능하도록 설계가 가능하다.
어떻게 설계할까? - 리차드슨의 성숙도 모델을 따른다.
- HTTP를 이용하여 데이터를 전송한다.
- 개별 리소스와의 통신을 준수한다.
- 개별 리소스들을 URI 통해 요청하여 적절한 응답을 받는다.
- HTTP 메서드 원칙 준수
- CRUD에 맞는 로직으로 HTTP 메서드를 사용한다.
- 응답 리소스에 하이퍼 미디어 컨트롤을 적용한다.
Open API
정의
- 정부에서 제공하는 공공데이터에 쉽게 접근할 수 있도록 제공하는 API를 말한다.
3. 새로 알게 된 내용 & 이해가 안가는 내용
이해가 안가는 내용
라우팅 부분이 이해가 안가서 따로 정리해서 노션에 적어놓을 예정이다.
전체적으로 이해는 가는데, 정의부분에서 혼선이 조금 있는거 같다. 블로그 같은 곳에