기초 http 서버 구축하기
HTTP 모듈 이용하기
Node.js Built-in 모듈 중에서 HTTP 모듈을 이용해서 서버를 구현할 수 있다.
const http = require('http'); // require 메서드를 이용해 가져온다.
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/html');
res.end('<h1>Hello World!</h1>')
})
server.listen(port, () => {
console.log(`Server running at port ${port}`);
});
const http = require('http');
const port = 3000;
const server = http.createServer((req, res) => {
// writeHead는 한 번만 호출되어야 하며 end()가 호출되기 전에 호출되어야 한다.
// 상태 코드와 응답 헤더를 클라이언트에 보낸다
res.writeHead(200, {
'Content-Type': 'text/plain'
});
// json을 반환하고 싶다면 content-type을 변경하면 된다.
// res.writeHead(200, {
// 'Content-Type': 'application/json'
// });
// 데이터가 로드 되었음을 서버에 알림
res.end("Hello World");
// res.end에는 문자열을 넣어주어야 한다.
// res.end(JSON.stringify({
// a: "a",
// b:"b"
// }));
});
server.listen(port, ()=> {
console.log(`Listening on port ${port}...`);
});
createServer
- http.createServer() 메서드는 server 객체를 생성한다.
- server 객체는 EventEmitter를 기반으로 만들어졌다. server.on('request', callback function);
server 객체
- server 객체는 컴퓨터의 포트를 수신하고 요청이 만들어질 때마다 requestListener라는 함수를 실행할 수 있다.
- server.listen(): 서버 실행, server.close(): 서버 종료
- server 객체는 EventEmitter를 기반으로 만들어졌다.
- server.on('request', 콜백 함수), server.on('connection', 콜백 함수) ... (close, upgrade...)
- HTTP 서버 객체는 컴퓨터의 포트를 수신하고 요청이 만들어질 때마다 requestListener라는 함수를 실행할 수 있다.
requestListener 함수
- 서버가 요청을 받을 때마다 호출되는 함수
- 사용자의 요청과 사용자에 대한 응답을 처리한다.
req
- req(request), res(response) 객체는 노드가 전달해준다.
- request 객체는 IncommingMessage의 인스턴스이다.
- IncommingMessage 객체는 서버에 대한 요청을 나타낸다.
res
- ServerResponse 객체는 requestListener 함수의 두 번째 매개변수로 전달된다.
- 클라이언트에 웹 페이지를 제공하기 위해 response 객체를 사용한다.
'NODE.JS' 카테고리의 다른 글
[Node.js] 여러 가지 export 방법 (0) | 2024.01.15 |
---|---|
[Node.js] 모듈을 사용하는 이유와 모듈 생성해보기 (0) | 2024.01.15 |
[Node.js] Module (0) | 2024.01.15 |
[Node.js] Event Emitter (0) | 2024.01.12 |
[Node.js] setImmediate()과 setTimeout(), 그리고 process.NextTick() (0) | 2024.01.12 |
기초 http 서버 구축하기
HTTP 모듈 이용하기
Node.js Built-in 모듈 중에서 HTTP 모듈을 이용해서 서버를 구현할 수 있다.
const http = require('http'); // require 메서드를 이용해 가져온다.
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/html');
res.end('<h1>Hello World!</h1>')
})
server.listen(port, () => {
console.log(`Server running at port ${port}`);
});
const http = require('http');
const port = 3000;
const server = http.createServer((req, res) => {
// writeHead는 한 번만 호출되어야 하며 end()가 호출되기 전에 호출되어야 한다.
// 상태 코드와 응답 헤더를 클라이언트에 보낸다
res.writeHead(200, {
'Content-Type': 'text/plain'
});
// json을 반환하고 싶다면 content-type을 변경하면 된다.
// res.writeHead(200, {
// 'Content-Type': 'application/json'
// });
// 데이터가 로드 되었음을 서버에 알림
res.end("Hello World");
// res.end에는 문자열을 넣어주어야 한다.
// res.end(JSON.stringify({
// a: "a",
// b:"b"
// }));
});
server.listen(port, ()=> {
console.log(`Listening on port ${port}...`);
});
createServer
- http.createServer() 메서드는 server 객체를 생성한다.
- server 객체는 EventEmitter를 기반으로 만들어졌다. server.on('request', callback function);
server 객체
- server 객체는 컴퓨터의 포트를 수신하고 요청이 만들어질 때마다 requestListener라는 함수를 실행할 수 있다.
- server.listen(): 서버 실행, server.close(): 서버 종료
- server 객체는 EventEmitter를 기반으로 만들어졌다.
- server.on('request', 콜백 함수), server.on('connection', 콜백 함수) ... (close, upgrade...)
- HTTP 서버 객체는 컴퓨터의 포트를 수신하고 요청이 만들어질 때마다 requestListener라는 함수를 실행할 수 있다.
requestListener 함수
- 서버가 요청을 받을 때마다 호출되는 함수
- 사용자의 요청과 사용자에 대한 응답을 처리한다.
req
- req(request), res(response) 객체는 노드가 전달해준다.
- request 객체는 IncommingMessage의 인스턴스이다.
- IncommingMessage 객체는 서버에 대한 요청을 나타낸다.
res
- ServerResponse 객체는 requestListener 함수의 두 번째 매개변수로 전달된다.
- 클라이언트에 웹 페이지를 제공하기 위해 response 객체를 사용한다.
'NODE.JS' 카테고리의 다른 글
[Node.js] 여러 가지 export 방법 (0) | 2024.01.15 |
---|---|
[Node.js] 모듈을 사용하는 이유와 모듈 생성해보기 (0) | 2024.01.15 |
[Node.js] Module (0) | 2024.01.15 |
[Node.js] Event Emitter (0) | 2024.01.12 |
[Node.js] setImmediate()과 setTimeout(), 그리고 process.NextTick() (0) | 2024.01.12 |