이 게시글은 노드강좌를 시청하며 필기한 것을 토대로 메모한것입니다.
http 서버 만들기
https://koonsland.tistory.com/95
localhost 와 포트
localhost는 컴퓨터 내부 주소
포트는 서버내에서 프로세스를 구분하는 번호
-기본적으로 http 서버는 80번 포트 사용(생략가능)
- 다른 포트로 데이터베이스나 다른 서버에 동시에 연결 가능
REST API 만들기
서버에 요청을 보낼 때는 주소를 통해 요청의 내용을 표현
-/index.html 이면 index.html 을 보내달라는 뜻
-항상 html을 요구할 필요는 없음
-서버가 이해하기 쉬운 주소가 좋음
REST API
-서버의 자원을 정의하고 자원에 대한 주소를 지정하는 방법
HTTP 요청 메서드
-GET : 서버 자원을 가져 오려고 할 때 사용
-POST : 서버에 자원을 새로 등록하고자 할 때 사용
(또는 뭘 써야 할지 애매할 때 )
-PUT : 서버의 자원을 요청에 들어있는 자원으로 치환하고자 할때 사용
-PATCH: 서버자원의 일부만 수정
-DELETE: 서버의 자원을 삭제
RESTAPI 단점) 해커들이 규칙만 찾으면 악용 (예측가능)
HTTP 프로토콜
클라이언트가 누구든 서버와 HTTP 프로토콜로 소통가능
- IOS , 안드로이드 , 웹 이 모두 같은 주소로 요청 보낼수 있음
- 서버와 클라이언트의 분리
RESTFUL
-REST API를 사용한 주소 체계를 이용하는 서버
-GET /user는 사용자를 조회
-POST /user 는 사용자를 등록
쿠키 이해하기
요청에는 한 가지 단점이 있음
-누가 요청을 보냈는지 모름
-쿠케와 세션이 필요
쿠키: 키 = 값 의 쌍
ex) name = kangji
-매 요청마다 서버에 동봉해서 보냄
-서버는 쿠키를 읽어 누구인지 파악
쿠키가 있냐 없냐 => 다른 화면을 그려줄수 있다
ex) login 성공시 ~~님 환영합니다
세션 사용하기
중요한 정보-> 서버에 저장
들어갈수 있는 key=> 브라우저에 공개
https ,http2
웹 서버에 SSL 암호화를 추가하는 모듈
http -> https로 변경 가능
CLUSTER
기본적으로 싱글스레드인 노드가 cpu코어를 모두 사용할 수 있게
해주는 모듈