
Node.js 적용하여 구현해 본다.
: V8엔진을 기반으로 기반으로 구현된 Server Side JavaScript 소프트웨어 시스템이다.
: node -v : 설치된 노드제이에스 버전
: npm -v : node package manager 버전
노드 설치하면 express-generator 모듈을 설치한다.
npm install express-generator -g -> -g 옵션을 주면 global하게 설치한다.
express -e 프로젝트명 엔터
-> 프로젝트 생성되고 디렉토리 구조도 제공된다.
-> package.json에 기본적인 모듈이 추가된다.
-> 이미 정해진 가이드가 있다.
1. bin디렉토리 : www이름의 파일이 한 개 존재함.
확장자는 없지만 내부는 노드가 서버로 동작하기 위한 기본코드가 자바스크립트로 작성되어 있다.
또한 서버를 시작할 포트가 지정되어 있다.
2. node_modules : npm install을 하면서 생긴 폴더임
그래서 package.json에 선언되어 있는 모듈과 이 모듈을 실행하기 위해서 필요한 의존 관계의 모듈이 설치되어 있다.
node_modules 설치하기 : npm install -> express등 관련 모듈을 설치한다.
노드몬 설치하기 : npm install nodemon -g
3. public: 이미지, 자바스크립트 파일, 스타일시트 파일이 있다.
4. routes : index.js와 users.js 파일이 존재함 - express-generator 생성함
라우터를 처리하기 위한 코드가 있다.
5. views : 뷰계층을 처리하는 파일이 있는 곳
프로젝트를 생성할 때 템플릿 엔진으로 ejs를 지정했으므로 이 위치에 ejs파일이 배포되어있음
http://localhost:5000
http://localhost:5000/login
https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css - > 스타일 시트 외부 라이브러리 https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js -> 자바스크립트 외부 라이브러리
css나 js는 서버단에서 클라이언트측으로 다운로드 된다.
너무 무거우면 속도가 오래 걸린다.
파일이름에 min이 들어가있으면 light 버전이다.
줄바꿈이 안되어있고 들여쓰기가 생략된 즉 문자열들이 바짝 붙어있다.
CDN(Content Delivery Network) - 전 세계에서 분산된 서버 네트워크를 활용하여 콘텐츠 빠르고 효율적으로 전달하기 위한 시스템이다. (속도향상, 서버부하 분산, 글로벌 콘텐츠 제공, 서비스 안전성 등등 장점이 많다.)
https://developers.kakao.com/
카카오 개발자 센터 홈페이지
카카오 로그인 후에 애플리케이션 추가하기

앱 키 -> REST API 키 복사하기
https://developers.kakao.com/docs/latest/ko/daum-search/dev-guide#search-book
책 검색하기 URL 복사

- 200 OK 응답 성공
