minstudio

요청 데이터 처리 (Query, Params, Body)

클라이언트(프론트엔드)가 서버로 데이터를 보낼 때 사용하는 3가지 핵심 바구니입니다.

🛒 데이터 배달의 3가지 형태

  • req.query: 게시판 2페이지, 최신순 정렬 등 "조건/옵션"을 URL 뒤에 붙여 보낼 때 (GET)
  • req.params: 특정 유저 1명의 프로필 등 "식별자"를 URL 경로 자체에 포함할 때 (GET/PUT)
  • req.body: 비밀번호, 긴 게시글 본문 등 "크고 숨겨야 하는 데이터"를 보낼 때 (POST/PUT)
// Body 데이터를 파싱(해석)하기 위한 필수 내장 미들웨어 장착
app.use(express.json()); // JSON 형식 허용
app.use(express.urlencoded({ extended: true })); // form 형식 허용

app.post("/login", (req, res) => {
    // 1. Query String: url?sort=desc
    const sortType = req.query.sort; 
    
    // 2. Path Variable: url/users/123
    const userId = req.params.id; 
    
    // 3. Request Body: 은밀하게 봉투(body)에 담겨온 데이터 (비밀번호 등)
    const { email, password } = req.body; 
    
    res.send(`${email}님 로그인 시도 확인`);
});
요청 데이터 처리 (Query, Params, Body) | Minstudio