오늘의 생각
뭔가 배우긴 배웠는데...어렵다...이해가 잘 안 된다.
Rest API를 통해 HTTP 프로토콜 통신을 주고 받고 총 4 단계의 성숙도 모델을 만족시켜야 했는데, 이 부분에서 매우 헷갈렸다. 아무래도 네트워킹 쪽 지식은 상대적으로 적어서 쉽게 소화가 되지 않았다.
과정 중에 배웠던 내용을 블로그에 적는 시간이 있었는데, 한 자도 적지 못했다. 일단 Rest API에 대해 설명하려면 HTTP/네트워킹 기초에 대한 설명을 빼먹을 수가 없었고 당장 네트워크 기초만 해도 아직 외우지 못했고 이해하지 못한 개념들이 상당히 있었다.
이전에는 fetch나 jQuery의 .get메서드는 단순히 서버에 통신하는 개념이라고 알고 있었는데, 실제로는 통신 중에 request나 response가 있고 HTTP를 통해 통신하고 있다는 사실을 몰랐어서 배우는 개념들이 매우 낯설었다.
덕분에 postman의 사용법을 배웠을 때 매우 유용하다고 생각했다. 특히 postman을 통해 HTTP 메서드의 종류, 파라미터와 URL, 엔드포인트 등을 다시 복습해 볼 수 있어서 좋은 기회였다.
하지만 여전히 네트워크에 대한 이해를 잘 못하고 있는 것 같아서 자주 복습을 해서 해당 개념들을 완벽히 숙지해야겠다는 생각이 들었다.
오늘의 키워드
Rest(Representational State Transfer) API, Richardson 성숙도 모델, 리소스, 엔드포인트, HTTP 프로토콜, CRUD:Create/Read/Update/Delete, 하이퍼 미디어 컨트롤(HATEOAS;Hypertext As The Engine Of Application State), open API, API key,
오늘의 학습내용
- Rest API의 정의와 목적
- Richardson 성숙도 모델(RMM)을 쓰는 이유와 각 단계별 조건
- Open API의 정의와 API key가 필요한 이유
- postman 접속 방법과 사용 방법
어려웠던 keyword / 활용한 질문
Q. "CRUD에 맞게 적절한 HTTP 메서드를 사용"이라는 건 무슨 의미인가요?
A. 만들고, 읽고, 업데이트하고, 지울 때는 각 상황에 맞는 HTTP 메서드를 적절히 사용해야한다는 것을 의미합니다. 예를 들어 예약 시간을 조회하기 위해서는 POST 메서드를 사용하는 것이 적절한 것처럼 상황에 맞는 HTTP 메서드를 활용할 줄 알아야 합니다. 이는 Richardson 성숙도 모델 2단계를 통과하기 위한 조건이기도 합니다.
Q. Open API는 누구에게나 열려있는 API인데, 왜 API key가 필요한가요?
A. 누구에게나 열려있는 API더라도 로그인한 이용자에게 자원에 접근할 수 있는 권한을 부여하기 때문에 API 키를 필요로 합니다. 또한 API가 현재 접근하고 있는 프로젝트를 식별하기 위해 필요합니다. 덧붙여 개인적인 의견을 덧붙이자면 올바른 공공데이터를 제공하고 API가 손상되지 않기 위해서는 기본적이고 필수적인 보안장치로서의 역할을 할 수 있습니다.
'개발자 일기 > 일일회고 (TIL)' 카테고리의 다른 글
부트캠프 36일차 (Web Server 기초) (0) | 2022.10.13 |
---|---|
부트캠프 34, 35일차 (클라이언트 Ajax 요청) (2) | 2022.10.13 |
부트캠프 31일차 (웹 아키텍쳐, 브라우저 작동 원리) (0) | 2022.10.05 |
부트캠프 29, 30일차 (React State & Props) (1) | 2022.10.03 |
부트캠프 28일차 (React SPA / Router) (0) | 2022.10.02 |
댓글