API를 계속해서 만들어왔고, 서버를 관리해왔다.
전문적으로 서버를 공부한 사람은 아니지만, 실무위주의 학습과 개발을 해왔다.
전문적으로 다루시는 분들에 비해 그 내부적인 동작과 퍼포먼스 향상 관련해서는 부족하지만,
적어도 원하는 기능을 구현하고자 한다.
나아가 전문가가 된다면 더 좋겠지만, 나의 주 포커스는 Front-end이다.
[ 지금부터 언급하는 RestAPI는 외부 RestAPI를 말합니다.
Restful API Server를 말하는것과는 다릅니다. ]
그런 내가 개발과정에서 RestAPI, API에 대해 얻은 개인적인 통찰을 기록한다.
최근, YoutubeAPI, KakaoAPI, FacebookAPI 등의 RestAPI를 통해 개발을 하면서 느낀바는 '비슷하다' 이다.
무슨말이냐면, 'Kakao의 RestAPI를 가져다 쓸줄 안다면 나머지도 다 쓸수 있다' 라고 봐도 무방하다.
그 사용패턴과 방식이 같기 때문이다.
그렇다면 본론으로 들어가 RestAPI가 어떻게 돌아가는지 확인하자.
RestAPI는 Client에서 직접 호출하는걸 지양한다. 즉 server - to - server API 이다.
따라서, RestAPI를 통해 어플리케이션을 구축하고자 한다면 Third API Server가 필요하다.
여기서 Third API Server는 흔히 말하는 서버이다.
즉, Only Front-end앱이 아니라면 보통 하나씩 가지고있는 그 서버말이다.
일반적인 경우에는 아래와 같이 서버를 사용한다.
Client의 API요청 <---> Third API Server의 API응답
그러나, 외부 RestAPI를 이용할때는 아래와 같다.
Client의 API요청 <---> Third API Server의 API 요청/응답 <---> RestAPI Server(외부)의 응답
server - to -server 로 외부 RestAPI를 호출하고 응답받아 나의 Client로 전달해주는것이다.
다소 번거롭지만 그 장점은 확실하다.
하나의 서버구축만으로 웹/앱/데스크탑 어떤 플랫폼에도 대응할 수 있다는것이다.
클라이언트에서 필요한 api를 요청하기마나 하면 된다.
RestAPI를 처음 접하시는 분들에게 혼선을 주지않기위해 마지막 코멘트를 남기자면,
흔히 말하는 Rest API Server란, Restful하게 설계한 내 서버를 의미합니다.
Restful하다는 의미는 검색해보시면 잘 정리된 자료가 많이 있습니다 ^^
웹사이트 개발 / 홈페이지 제작 / android앱 개발 / ios 앱 개발 / server / client / aws / fullstack / buisness partner / 외주 / 용역
https://open.kakao.com/o/sNETgUJb
'개발, 코딩 > 일반상식' 카테고리의 다른 글
GIt, remote브랜치에 push하기 (0) | 2020.02.26 |
---|---|
meta태그 - kakao 공유하기, 총정리 (0) | 2020.02.20 |
Prettier - 코드를 깔끔하게 정리하자 (0) | 2019.09.26 |
git 특정 계정 프로젝트 클론하기 (1) | 2019.07.22 |
git 특정 브랜치 클론하기 (0) | 2019.07.22 |