웹 개발할 때 매번 지나치게 되는 HTTP 헤더들.
하지만 진짜 중요한 몇 가지는 제대로 알고 있으면 디버깅, 최적화, 보안까지 챙길 수 있다
Content-Type
요청/응답 본문이 어떤 형식인지 알려주는 헤더
- 예시: application/json, text/html, multipart/form-data
- 💡 클라이언트와 서버가 데이터를 주고받을 때 파싱 오류 방지에 핵심
Authorization
인증 정보를 담는 헤더
- 예시: Bearer <access-token>, Basic <base64encoded>
- 💡 OAuth2, JWT 등 인증 처리 시 필수. 민감한 정보가 있으므로 HTTPS 필수
Cache-Control
브라우저나 프록시 캐시 동작을 제어
- 예시: no-cache, max-age=3600, public
- 정적 자산 캐싱 최적화에 중요. 성능 향상에 큰 기여
Set-Cookie / Cookie
클라이언트와 서버 간 세션 유지를 위한 쿠키 정보
- Set-Cookie: 서버 → 클라이언트
- Cookie: 클라이언트 → 서버
- HttpOnly, Secure, SameSite 옵션도 함께 신경 써야 보안 강화 가능
X-Forwarded-For
클라이언트의 실제 IP를 알려주는 프록시용 헤더
- 예시: X-Forwarded-For: 123.123.123.123
- 리버스 프록시(Nginx, AWS ELB 등) 뒤에 있을 때 클라이언트 IP 추적용
덤: 개발할 때 유용한 팁
- Accept: 클라이언트가 원하는 응답 타입
- User-Agent: 요청한 브라우저 정보
'Etc' 카테고리의 다른 글
docker 설치 중 WSL 관련 에러 해결기 (0) | 2025.04.06 |
---|---|
BE개발자가 모르면 안되는 것 - 정보 누출 (0) | 2025.04.06 |
BE개발자가 모르면 안되는 것 - 기능 이상 (Malfunction) (0) | 2025.03.30 |
인터페이스가 필요한가? (0) | 2025.03.30 |
BE개발자가 모르면 안되는 것 - SQL Injection (0) | 2025.03.23 |