Node.js

Node.js 4장

연결리스트 2019. 11. 27. 17:28

 

요청과 응답 

 

 - 클라이언트에서 서버로 요청을 보낸다. 

 - 서버는 요청의 내용을 읽고 처리한 뒤 클라이언트에게 응답을 보낸다.

 - 따라서 서버에는 요청을 받는 부분과 응답을 보내는 부분이 있어야 한다.

 - 이는 이벤트 방식으로 이루어진다. 

 - 클라이언트에게서 요청이 왔을 때 어떤 작업을 수행할지 이벤트 리스너를 미리 등록해 두어야 함 

 

 

http 서버 

createServer 메서드 

 - 인자로 요청에 대한 콜백함수를 넣을 수 있다. 

 - 요청이 들어올 때마다 매번 콜백 함수가 실행된다. (해당 콜백 함수에 응답을 적어주면 된다.)

 - 콜백함수에는 req, res 매개변수가 존재한다. 

 - req 객체 = 요청에 관한 정보,  res 객체 = 응답에 관한 정보 

 

 

const http = require('http');

 

const server = http.createServer((reqres=> {

    res.write('<h1> Hello Node! </h1>');

    res.end('<p> Hello Server! </p>');

});

server.listen(8080);

server.on('listening', () => {

    console.log('8080번 포트에서 서버 대기 중입니다!');

});

server.on('error', (error)=> {

    console.error(error);

});

 

 - createServer 메서드 뒤에 listen 메서드를 붙이고 포트번호와 포트 연결 완료 후 실행될 콜백 함수를 넣어준다

 - 콜백 함수를 넣는 대신 위의 코드처럼 listening 이벤트 리스너를 붙여도 된다. 

 - res 객체에는 res.write, res.end 메서드가 있다. 

 - res.write의 첫번째 인자는 클라이언트에게 보낼 데이터이다. (여러번 호출도 가능)

 - res.end는 응답을 종료하는 메서드이다. (인자가 있다면 그 데이터를 클라이언트에게 보내고 응답 종료)