HTTP 7

[HTTP 완전 정복 시리즈] 7편 - HTTP 상태코드 완벽 정리

HTTP 통신에서 클라이언트와 서버는 요청과 응답 메시지를 주고받는다.이때 서버는 응답 메시지에 상태코드(Status Code)를 담아,요청이 성공했는지 실패했는지, 추가 동작이 필요한지를 알려준다.이번 글에서는 HTTP 상태코드 체계와 실무에서 자주 쓰이는 코드를 정리해본다. 상태코드란?서버가 요청을 처리한 결과를 숫자 코드로 표현한 것항상 응답 메시지의 첫 줄(상태 라인)에 포함된다상태코드는 100 ~ 599번대로 구성되며, 첫 자리 숫자로 의미를 구분한다코드의미예시1xx처리 중100 Continue2xx성공200 OK, 201 Created3xx리다이렉션301 Moved Permanently4xx클라이언트 오류400 Bad Request, 404 Not Found5xx서버 오류500 Internal..

HTTP 2025.07.22

[HTTP 완전 정복 시리즈] 6편 - HTTP 메서드 활용법과 설계 전략

이전 편에서는 각 HTTP 메서드의 특징과 상태코드에 대해 정리했다.이번에는 실무에서 HTTP 메서드를 어떻게 활용하는지, 그리고 RESTful API를 어떻게 설계해야 하는지에 대해 정리해본다.정적 리소스는 GET으로 단순 조회정적 리소스(예: 이미지, 정적 HTML, JS)는 GET 메서드로 간단히 조회한다.URL에 파라미터 없이 리소스 경로만으로 접근하는 것이 기본이다.예: /images/logo.pngGET + 쿼리파라미터: 검색, 필터, 정렬검색 조건, 정렬 방식, 필터링 등은 쿼리 파라미터로 전달한다.예: /posts?category=java&sort=recent다만, 리소스를 수정하는 요청에는 절대 GET을 사용하지 않아야 한다.HTML Form과 HTTP 메서드 제한 태그는 GET, POS..

HTTP 2025.07.22

[HTTP 완전 정복 시리즈] 5편 - HTTP 메서드와 상태코드 제대로 이해하기

HTTP는 단순한 요청-응답 기반의 통신 프로토콜이지만,메서드와 상태코드를 이해하는 것만으로도 API 설계와 디버깅이 훨씬 쉬워진다.이번 포스팅에서는 HTTP의 핵심 메서드들과 상태코드 체계에 대해 정리해본다.HTTP 메서드란?HTTP 메서드는 클라이언트가 서버에 어떤 작업을 요청할지 지정하는 방법이다.대표적인 메서드는 아래와 같다.메서드설명GET리소스를 조회 (서버 상태 변경 없음)POST리소스를 생성하거나 서버 처리 요청PUT리소스를 전체 수정 또는 생성PATCH리소스의 일부만 수정DELETE리소스 삭제HEAD헤더만 조회 (본문 제외)OPTIONS서버가 지원하는 메서드 확인 (주로 CORS에서 사용) 이 중 GET과 HEAD는 서버의 상태를 바꾸지 않기 때문에 안전한(Safe) 메서드로 분류된다.메서..

HTTP 2025.07.22

[HTTP 완전 정복 시리즈] 4편 - HTTP의 동작 원리와 메시지 구조

HTTP는 클라이언트와 서버가 데이터를 주고받기 위해 사용하는 프로토콜이다.지금까지는 HTTP 요청이 네트워크를 어떻게 타고 흘러가는지 살펴봤다면,이번에는 HTTP 자체가 어떻게 동작하는지,그리고 요청과 응답 메시지의 구조는 어떻게 생겼는지를 정리해본다.HTTP는 어떻게 동작하는가?HTTP는 기본적으로 클라이언트-서버 구조로 작동한다.클라이언트가 HTTP 요청을 보낸다.서버는 요청을 처리한 후 응답을 보낸다.응답을 받은 클라이언트는 이를 렌더링하거나 사용자에게 표시한다.이 흐름은 단방향이며, 클라이언트가 요청을 보내지 않으면 서버는 응답하지 않는다.무상태(Stateless) 구조HTTP는 Stateless Protocol이다.즉, 서버는 클라이언트의 이전 요청 상태를 기억하지 않는다.요청마다 독립적으로 ..

HTTP 2025.07.21

[HTTP 완전 정복 시리즈] 3편 - 웹 브라우저 요청은 어떻게 흘러가는가?

이전 글에서는 IP, TCP, DNS 같은 네트워크 구조를 살펴봤다.이번엔 실제로 브라우저에서 URL을 입력했을 때,HTTP 요청이 어떻게 흘러가고, 서버는 어떻게 응답을 주는지 전체 과정을 정리해본다.브라우저 요청 흐름 정리브라우저 주소창에 www.example.com을 입력하고 엔터를 누르면 아래 단계들이 수행된다. 1. URL 입력 → DNS 조회브라우저는 먼저 입력한 도메인을 IP 주소로 변환해야 한다.이를 위해 DNS 서버에 요청을 보내고 해당 도메인에 대응되는 IP 주소를 얻는다.예: www.example.com → 93.184.216.342. IP + Port로 TCP 연결 시도DNS를 통해 IP 주소를 얻으면, 브라우저는 해당 서버와 TCP 연결을 맺는다.기본 포트는 80 (HTTP) 또는..

HTTP 2025.07.21

[HTTP 완전 정복 시리즈] 2편 - 인터넷 통신 흐름: IP, TCP, DNS까지

HTTP를 이해하기 전에, 그 아래에서 움직이는 인터넷 통신 구조를 먼저 알아둘 필요가 있다.웹 요청은 결국 네트워크를 타고 서버에 도착하고, 그 응답이 다시 클라이언트로 돌아온다.이 흐름을 이해하면 HTTP가 어떻게 전송되는지, 왜 TCP가 필요한지, DNS가 어떤 역할을 하는지 명확해진다.인터넷 통신 흐름클라이언트가 웹 브라우저에서 주소를 입력하고 엔터를 누르면,그 요청은 여러 단계를 거쳐 서버에 도착하게 된다.1. IP 주소인터넷에서는 IP 주소를 통해 컴퓨터(노드)를 식별한다.내 컴퓨터도 IP가 있고, 접속하려는 서버도 IP를 갖고 있어야 한다.데이터는 결국 출발지 IP → 목적지 IP 방향으로 흘러간다.IP는 "주소"의 개념이고, 그 주소를 통해 데이터를 패킷(Packet)이라는 단위로 전달하게..

HTTP 2025.07.21

[HTTP 완전 정복 시리즈] 1편 - 웹 개발자라면 HTTP부터 이해하자

웹 개발을 하다 보면 자연스럽게 HTTP와 마주하게 된다.처음에는 단순히 GET이나 POST 요청만 쓰는 수준이었는데, 점점 깊게 들어갈수록HTTP가 웹의 핵심 통신 규약이라는 사실을 깨닫게 된다.이번 글에서는 HTTP의 기본 개념과 구조를 정리하면서, 왜 이것이 중요한지 복습해본다.HTTP란?HTTP는 HyperText Transfer Protocol의 약자다.원래는 HTML 문서를 전송하는 용도로 시작되었지만, 현재는 이미지, JSON, 파일 등웹에서 오가는 거의 모든 데이터가 HTTP로 전송된다.HTTP는 애플리케이션 계층에 위치한 텍스트 기반의 통신 규약이다.클라이언트-서버 구조HTTP는 클라이언트-서버 구조로 동작한다.클라이언트는 서버에 요청(request)을 보내고, 서버는 이에 응답(resp..

HTTP 2025.07.21