본문 바로가기
백엔드/UMC 8기

Request Body, path Variable, Query String, Request Header

by 피스타0204 2026. 4. 4.



1. Request Body (요청 본문) -> POST /users → Body: { "name": "장서원", "age": 22 }
GET 요청이 아닌 POST요청이나 PATCH, PUT 요청에는 Request Body에 값을 담아서 전송할 수 있습니다. Path Variable, Query String처럼 url에 plain text로 노출되지 않기 때문에 브라우저 히스토리·서버 로그·프록시 로그에 덜 찍힙니다. 따라서 민감정보를 담는 데 사용합니다.

1.2 그럼에도 request body가 안전하지 않은 이유
HTTPS 없이 쓰면 body내용이 그대로 공격자에게 보입니다. 그래서 요즘은 거의 필수이고, 특정 오픈 api나 특정 배포환경(웹- vercel)에서는 https를 사용하지 않으면 배포를 허용하지 않는 경우가 많습니다.
https는 nginx를 사용해서 주로 서빙합니다. nginx로 https 설정하는 방법이 궁금하다면 아래 블로그를 참고해주세요
https://html-jc.tistory.com/736
https://turtle0204.tistory.com/entry/08-https-%EB%8F%84%EB%A9%94%EC%9D%B8-%EC%97%B0%EA%B2%B0%ED%95%98%EA%B8%B0-Draconist

2. Path Variable 과 Query String
Path Variable -> 예: GET /users/123에서 123이 userId Path Variable.
Query String (쿼리 파라미터) -> 예: GET /posts?offset=0&limit=10&sort=desc

두 개념은 자주 헷갈리는 것 중 하나입니다. api에 번호를 붙여야 할 일이 있다면 path variable, 검색이나 조회에서 조건을 걸어야 하는 경우에는 Query String을 사용합니다. 그래서 상세 페이지같은 경우에 path Variable을 사용합니다.

3. Request Header (요청 헤더)
Request Header는 api내용이라기 보다 보안이나 내용 타입을 관리하는 데요. jwt토큰을 반환하거나, 보낸 데이터 타입, 받고 싶은 응답 타입을 넣습니다. 일반적으로 하나의 파일에 서 관리합니다.

Authorization: Bearer xxx (인증 토큰)
Content-Type: application/json (보낸 데이터 타입)
Accept: application/json (받고 싶은 응답 타입)

 

'백엔드 > UMC 8기' 카테고리의 다른 글

로그인, 회원가입 auth 경로  (0) 2026.04.04
ERDCloud 사용하기  (1) 2026.03.20
Redis Cloud 적용기-LINKU  (0) 2025.11.30
REDIS 서버 설치하기  (0) 2025.09.02
blue/green방식의 무중단 배포 <실패..>  (0) 2025.09.02