WEB-STUDY

라우팅

비숑주인 2025. 1. 31. 13:58

라우팅이란?

 

클라이언트에서 들어오는 요청에 따라 그에 맞는 함수를 실행하는 것


- (예) nodejs.org 사이트에서  
  nodejs.org/en/about 로 요청하면 About Node.js 화면으로 이동  
  nodejs.org/en/download라는 URL로 요청하면 Downloads 화면으로 이동


- 라우팅을 이용하면 사용자가 입력하는 URL에 따라 다른 내용을 보여 줄 수 있음


- GET이나 POST, PUT, DELETE 같은 요청 메서드에 따라 처리할 함수를 다르게 연결할 수도 있음 

 

// 라우팅 연습하기 (결과 비교 파일 : 04\results\server-5.js)

const http = require("http");

const server = http.createServer((req, res) => {
    // 자바 스크립트의 구조 분해 할당(destructing) 기능
    // req.url : 요청 경로
    // req.method : 요청 방식

    const { url, method } = req;
    // const url = req.url;
    // const method = req.method;
});

res.setHeader("Content-type", "text/plain");

if (method === "GET" && url === "/home") {
    res.write("HOME");
    res.end();
} else if (method === "GET" && url === "/about") {
    res.end("ABOUT");
} else {
    res.end("Not Found");
}

server.listen(3000, () => {
    console.log("서버가 실행 중");
});

 

 

if else문으로 라우팅을 일일이 하면 힘들기 때문에 보통 프레임워크 Express.js 를 이용해서 더 쉽게 한다.