반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 운동일지
- SQL
- code kata
- node
- Til
- 박스점프
- 습윤밴드
- 활동 킬로칼로리
- nodejs
- 홈트
- 러닝
- 월별 운동일지
- JavaScript
- dml
- express
- axios
- Udemy
- 위코드
- 메디패치
- wecode
- git
- 크로스핏
- 걷기
- MySQL
- 드림코딩
- node.js
- github
- dql
- 달리기
- 독서 리뷰
Archives
- Today
- Total
RISK IT
[TIL20_23.1.28.] [NodeJS] Node 서버 생성 본문
반응형
node Coure Modules
- http: 서버를 출시하거나 요청을 보내는 작업
- https: 모든 전송 데이터가 암호화되는 SSL 암호화 서버를 출시할 때 유용
- fs
- path
- os
서버 생성
👇 Arrow function을 활용한 서버 생성
const http = require('http');
const server = http.createServer((req, res) => {
console.log(req);
});
server.listen(1000);
- {}안에 있는 함수를 createServer 콜백함수라고 부른다.
const http = require('http');
- require에는 다른 파일 경로나 자바스크립트 파일을 불러올 수 있다.
- 만약 /(절대경로)나 ./(상대경로)를 입력한 후 http를 입력하면 뒤에
.js
가 붙어서 자동적으로 자바스크립트 파일을 찾게 된다. - 우리는 http라는 로컬파일을 찾을 것이기 때문에 경로를 입력하지 않는다.
- 경로를 생략하면 http라는 글로벌 모듈을 찾게 되는데 이는 Node.js에 탑재된 모듈 중 하나다.
const server = http.createServer((req, res) => {
console.log(req);
});
.createServer()
는 서버를 만들 때 꼭 필요한 메소드- createServer위에 마우스를 올리면 requestListener를 인수로 가진다고 나옴. requestListener는 들어오는 모든 요청을 실행하는 기능
server.listen(1000);
.listen()
은 Node.js가 스크립트를 바로 종료하지 않고 계속 실행되면서 듣도록 한다..listen()
의 여러 인수 중 첫 번째 인수는 port 번호인데, 실무에서는 대게 포트 번호를 입력하지 않고, 기본으로 포트 번호 80이 사용되지만 로컬 개발 환경에서는 1000 사용했음.- 터미널에서
node app.js
로 실행해보면 종료가 안됨. - listen이 계속 실행하고 있기 때문.
- 브라우저에서
localhost:1000
을 쳐서 들어가면console.log(req)
에 의해 터미널에 요청 로그 남음
다른 방식으로 표현
👇 requestListener 함수 만들어서 서버 생성
const http = require('http');
function rqListener(req, res) {}
http.createServer(rqListener);
👇 함수 명확하게 생성하지 않고 익명의 함수를 사용하는 방법
const http = require('http');
http.createServer(function (req, res) {});
- 이것이 Node.js의 주된 EDA(Event Driven Architecture)이다.
- 앞으로 이 같은 설정이나 코드 스니펫을 자주 사용할 것.
코드 스니펫
: 노드에게 X가 일어나면 Y를 실행하라. 즉, 이 경우에는 요청이 들어오면 이 함수를 실행하라 알려주는 것.- 위의 두 경우는 server.listen 생략
반응형
'IT > TIL' 카테고리의 다른 글
[TIL22_23.1.30.] [Node] "westagram" 인증 & 인가 (bcrypt, jwt 모듈) (0) | 2023.01.31 |
---|---|
[TIL21_23.1.29.] [NodeJS] Node 라이프사이클, 요청 및 응답 (0) | 2023.01.29 |
[TIL19_23.1.27.] [Node] Express - 'westagram' feature/CRUD 코드 수정 (0) | 2023.01.27 |
[TIL18_23.1.26.] promise와 async, await (드림코딩 강의) (0) | 2023.01.26 |
[TIL17_23.1.25.] callback 함수 with 동기&비동기 (드림코딩 강의) (0) | 2023.01.25 |