풀스택 맛보기5-Router

  1. Router
    1. 라우터 생성
    2. export
    3. URL Parameter
      1. URL id에 숫자만 받기
        1. 정규표현식

Router

  • 컨트롤러와 URL 관리를 쉽게 해준다.

라우터 생성

const globalRouter = express.Router();
const handleHome = (req, res) => res.send("Home");
globalRouter.get("/", handleHome);

export

  • controller를 외부로 보낸 때 사용

export const [controller] // Each export default [controller] // ALl

import 예시

  • export const [controller] // 이름 그대로 사용
  • export default [controller] // 이름 변경 가능

URL Parameter

url에 변수를 넣을 수 있게 해준다.

export const edit = (req, res) => {
  console.log(req.params);
  return res.send("Edit");
};

postRouter.get("/upload", upload);
postRouter.get("/:id", see);
postRouter.get("/:id/edit", edit);

Url 입력 http://localhost:4000/posts/12345/edit 결과

{ id: '12345' }
GET /posts/12345/edit 200 1.455 ms - 4

upload를 id 위에 넣은 이유?

request가 오면 express는 위에서 아래로 코드를 읽는데
:id가 위에 있다면 upload 또한 id로 인식하기 때문이다.

URL id에 숫자만 받기

정규표현식 (\d+) 사용 JS에서는 (\\d+) 역슬래시 추가하여 사용

예시

app.get("/:id(\\d+)", see);

=> id를 숫자로만 받게된다.

정규표현식
  • 문자열로부터 특정 정보를 추출해내는 방법

apple and pineapple

더 많은 정규표현식 알아보기 정규표현식 사용해보기

다음은 pug를 사용하여 html을 return하는 방법을 알아보자.

Continue with PUG

참고

  • Nomad Coders