👥 조별 과제
⚡ 개념 정리하기 !
서버
At the most basic level, an API is a mechanism that enables an application or service to access a resource within another application or service. The application or service doing the accessing is called the client, and the application or service containing the resource is called the server. — *https://www.ibm.com/topics/rest-apis*
+comment라 쓰고 아무말대잔치라 읽는다
공부할수록 헷갈렸던 것 중 하나는, 바로 웹 서버(웹 서비스)와 API서버의 차이였다.
TL;DR: 모든 웹서비스는 API지만, API라고 해서 웹서비스는 아니다. HTTP를 사용하는 API들을 ‘웹 서비스’라고 한다.
원래 Web Server와 Application Server가 분리된 위 그림으로 이해했는데, HTTP를 사용하는 REST API들이 나오고, 사실 Web자체가 RESTful하게 동작하다보니 Web Server와 API Server의 경계가 흐려진 것 같다.
API
사실 API는 되게 넓은 개념인데, 프로그램끼리 리소스를 직접적으로 접근하지 않고도 정보를 교환할 수 있게끔 만든 매개체이다.
API 이해하기 쉬운 개발블로그 글
<aside> 💡 REST API란?
</aside>
요약: HTTP기반으로 필요한 리소스를 요청하는 아키텍쳐로 설계된 API이다.
REST(*representational state transfer)*에 부합하도록 작성되었다.
REST의 3요소(Resource, Method, Message(optional))
1. (GET 요청) 2. comic.naver.com/webtoon/detail ? 3.id=318995
Resource는 자원의 위치로 나타내는 URI(Uniform Resource Identifier)로 접근한다. 위의 박스에서 2번에 해당, 링크라고 생각하기! [+생소하지만 위치 말고 다른 방법도 있어요! https://en.wikipedia.org/wiki/Content-addressable_storage]
Method는 HTTP Method(POST, GET, PUT, DELETE)를 따른다.
간단명료하게 API와 REST를 다룬 글
⚡ 토론해보아요 !
Node.js 에서는 API를 어떻게 활용할까요?
기본적으로 REST API를 놓고 보면 HTTP를 이용하기 때문에, Node.js 내에서 나의 프로그램(ex. 개인과제에서의 index.js)이 다른 API를 사용하기 위해선 Node.js가 HTTP Request를 보낼 수 있게 해주는 무언가가 필요하다.
5 Ways to Make HTTP Requests in Node.js
Node.js에는 http
모듈이 기본적으로 있기 때문에 이 모듈을 이용해도 되지만, 이보단 axios
같은 라이브러리를 많이 사용한다.
서버 개발 시 Node.js 를 사용하는 이유가 무엇일까요?
🙋♂️태경
강의에도 나와있듯, JS를 이용하기 때문에 프론트엔드와 백엔드를 하나의 언어로 구성할 수 있는 것은 큰 장점으로 꼽힌다!
이외에도
🙋♂️지혜:
Node.js에서는 모바일 어플리케이션이나 데스크탑용 어플리케이션의 개발이 가능하다.
자바스크립트를 동일하게 사용해서 서버단 로직을 처리할 수 있다는게 가장 큰 장점! 새로운 언어를 습득하지 않고도 자바스크립트를 활용해 서버기술을 빨리 개발/응용할 수 있습니다. 개발이 빠르고 쉽다. 서버 설치부터 화면 띄우는 것까지 금방 처리 됨.
🙋♂️강록:
npm(node package manager)를 통해 다양한 모듈(패키지)을 제공하여 필요한 라이브러리를 설치하여 사용할 수 있기에 효율성이 좋다.
█ 여덟번째 스터디 끗ㅡ