01. 쿠키와 세션 쿠키(Cookie): 브라우저가 서버로부터 응답으로 Set-Cookie 헤더를 받은 경우 해당 데이터를 저장한 뒤 모든 요청에 포함하여 보낸다. ==> 데이터를 여러 사이트에 공유할 수 있어서 보안에 취약할 수 있다. ==> 쿠키 간에는 세미콜론(;)으로 구분 세션(Session): 쿠키를 기반인 기술, 세션은 쿠키의 보안 단점을 보완해서 데이터를 서버에만 저장한다. But 사용자가 많은 경우 서버에 저장해야 할 데이터가 많아져서 서버 컴퓨터가 감당하지 못하는 문제가 생기기 쉽다. cookie-parser 미들웨어를 적용하여 쿠키 사용하기 const express = require("express"); const cookieParser = require('cookie-parser');..
01. 준비하기 환경 설정하기 AWS 가입하기(기본 사양의 서버(EC2)를 1년 동안 무료로 사용할 수 있다.) 가비아 가입하기 & 도메인 구입하기 (결제 기간을 1년, 금액은 최대한 싼 가격으로 구입 추천) 02.시작하기 EC2 Instance 생성 웹 서버 개념 웹 클라이언트(브라우저) - 웹 서버: ==> 웹 클라이언트는 웹 서버에 요청을 해서 원하는 데이터를 받아가는 일방적인 관계 서버 컴퓨터 - 웹 서버(프로그램) : ==> API 서버, 웹 서버, 앱 서버 등이 모두 프로그램, 서버 컴퓨터는 서버 프로그램을 실행하고 웹 서비스에 접속할게 도와준다. EC2는 AWS에서 제공하는 서버 컴퓨터 대여 서비스라 생각하면 된다. EC2 Instance 생성 AWS Console 주소로 이동 (지역은 서울..
01. 배포를 위한 Git Git이란? 체계적인 개발과 프로그램의 배포를 도와주는 형상 관리 도구, 버전 관리 시스템 프로젝트의 개발 단계에서 소스 코드의 버전을 효과적을 관리 할 수 있다. 같은 파일을 여러명이 동시에 작업할 수 있다. Git 개념 Repository ==> 모든 파일의 변경 사항을 저장할 수 있는 저장소 ==> Local Repository: 컴퓨터에 존재하는 저장소 ==> Remote Repository: GitHub와 같이 Git 서버에서 제공되는 저장소 Commit ==> 새로 변경된 내용을 기록하는 단위 Branch ==> 작업 내용이 충돌하지 않도록 해주는 개념, 저장소에 가지를 친다 생각하면 된다. Git 명령어 git init: 해당 프로젝트 폴더를 Git reposito..
01. 준비하기 데이터 베이스와 MongoDB의 개념 데이터 베이스란? ==> Database Management System(DBMS): 데이터를 저장하고 찾기 위해 만들어진 소프트웨어 ==> 데이터베이스 서버(DB 서버): DBMS가 설치된 서버 컴퓨터 ==> DB 서버의 모든 데이터는 DBMS가 관리 데이터 베이스의 종류 ==> 관계형DB - Relational DB(RDB): 데이터 형식이 정해져 있고, 데이터 끼리 관계를 맺어 모순이 없는 데이터를 유지할 수 있도록 도와준다. (모순이 없는 데이터: 무결성과 정합성이 높은 데이터 ==> 비관계형DB - Non-relational DB(NoSQL): 데이터의 형태가 고정되어 있지 않고 유연하게 확장할 수 있다. 유연한 만큼 저장되는 데이터를 제대로..
01. 준비하기 Express.js의 이해 일반적인 웹 서버와 Node.js로 만든 웹 서버는 다르지 않다. 기능이 다른 웹 서버는 존재할 수 있지만 기반이 되는 개념자체가 다른 웹서버는 존재하지 않다. Express.js란? ==> Node.js로 서버를 빠르고 간편하게 만들 수 있게 도와주는 웹 프레임워크 ==> 다양한 웹 프레임워크가 존재하지만 오늘날 가장 많은 Node.js 웹서버가 Express.js 프레임워크를 통해 개발. 웹 서버와 Express.js의 차이 ==> 웹서버와 Express.js는 동일하지 않다 ==> Node.js를 위한 웹 프레임워크로 웹서버를 구현하기 위해 사용 되는 것이 Express.js 프레임워크 API Client 학습 API Client란? ==> 개발단계에서 작..
01. Package Manager Package Manager란? 패키지를 손쉽게 다루는 작업을 안전하고 편리하게 사용하기 위한 툴 코드를 다운로드 받거나, 자신의 코드를 배포하여 다른 사람이 쓸 수 있도록 할 수 있다. Node.js에서 사용하는 대표적인 패키지 매니저는 npm과 yarn이 있다. npm이나 yarn에 업로드된 Node.js 모듈을 패키지라고 부른다. 모듈이 다른 모듈을 참조하여 사용하는 것과 같이, 패키지도 다른 패키지를 사용할 수 있다.(의존 관계) npm과 yarn은 특별한 이유가 존재하지 않다면 같이 사용하지 않는 것이 좋다. Package.json? 설치한 패키지들의 버전을 관리할 때 사용하는 파일 동일한 패키지를 사용하더라도 버전별로 기능을 다르게 사용할 수 있으므로 특정한..