January 27, 2021

요청과 응답


클라이언트에서 서버로 요청(Request)를 보내고, 서버에서 요청을 처리한 뒤 클라이언트에 응답(response)를 보낸다. 그러므로 서버에는 '응답'을 보내는 부분과 '요청'을 받는 부분이 필요하다.

<aside> 💡 Node.js에서는 응답과 요청을 이벤트를 이용하여 다룬다.

</aside>

http 모듈


const http = require('http');

http.createServer((req, res) => {
	res.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});
	res.write('<h1>Hello Node!</h1>');
	res.end('<p>Hello Server!</p>');
}).listen(3000, () => {
	console.log('3000번 포트에서 대기 중!');
})

createServer(콜백)

http 서버를 생성한다.

클라이언트에 의해 서버에 요청이 들어올 경우 createServer의 인자로 전달된 콜백이 실행된다.

콜백의 매개변수 req와 res는 각각 Request(요청), Response(응답)을 의미하며 요청에 관한 정보와 응답에 관한 정보를 담는 객체이다.

listen(포트 번호, 콜백)

클라이언트에 인자로 전달된 포트 번호를 공개하고, 연결 완료 후 콜백을 실행한다.

server.on('listening', () => {
	// 연결이 완료되면 실행!
});

listen 메소드에 콜백 함수를 넣는 대신, 이벤트 리스너를 이용할 수 있다.