45. node Server

홍인열·2021년 10월 22일

node server 생소하다! 오늘도 스프린트는 성공적으로 끝마쳤으나.. 이게 뭔지 알겠어! 라고 할수가 없다..휴

트랜잭션 Transaction

Transaction의 사전적 정의는 거래,매매 또는 처리 과정이라고한다.
node sever에서도 클라이언트가 서버에요청하고 서버가 응답하는 그과정이라고 생각하면 될것 같다.
이렇게 사용한다 정도만 이해한것 같다.

//공식문서중 HTTP 트랜잭션 해부의 내용이다.
const http = require('http'); //http 를 가져온다.

http.createServer((request, response) => {
  const { headers, method, url } = request;// request는 아주 많은 정보를 가지고 있는 객체다.
  let body = [];
  request.on('error', (err) => {
    console.error(err);
  }).on('data', (chunk) => { //여기 부분부터 request시에 전달된 데이터를 변환하는 과정이다.
    body.push(chunk); // 데이터가 상기 선언된 변수 body에담긴다.
  }).on('end', () => {
    body = Buffer.concat(body).toString(); //데이터를 문자열로 변환한다.	
    //여기서 body는 문자열이고 JavaScript를 사용해서 데이터를 추가 처리할수도 
    // 여기서 헤더, 메서드, url, 바디를 가지게 되었고
    // 이 요청에 응답하는 데 필요한 어떤 일이라도 할 수 있게 되었습니다.
  });
}).listen(8080); // 이 서버를 활성화하고 8080 포트로 받습니다. 

reponse.end() // 사용시 데이터를 전달할수 있다

오늘 진행했던 스프린트 같은경우 처음 해보는 서버를 이용하는 것이었고 http 요청을하고 그에대한 응답을 받아오는 걸 경험해보고 대략적인 과정을 경험해본것으로 만족한다.
TIL 작성한것중 오늘처럼 내용이 없었던 적은 없었던거 같지만.. node server를 경험해 본것도 충분히 배운거라고 하고싶다. 이전에는 node.js를 어떤시그로 사용하는지 감조차 잡지못햇지만 오늘했던 내용을 통해 조금이나마 알 수 있었다.

profile
함께 일하고싶은 개발자

0개의 댓글