HTTP 패킷 - GET/POST

すんす·2025년 9월 4일

HTTP 패킷 구조
헤더 (Header): 요청 메서드 방식, 클라이언트 정보, 브라우저 정보, 접속 URL과 같은 요청 정보를 포함한다.

바디 (Body): 서버에 전송할 특정 데이터를 담는다.

GET 방식
데이터를 URL의 일부로 만들어 HTTP 패킷의 헤더에 포함시켜 서버에 요청한다.

URL의 끝을 ? 마크로 알리고 데이터 표현을 시작한다.

데이터는 key=value 쌍으로 구성하며, & 마크로 각 쌍을 구분한다.

예: www.example.com?id=abcd&pass=1234

key는 id, pass value는 abcd, 1234 이다.

Body에 특별한 내용을 담지 않으므로 빈 상태로 요청을 보낸다.

Body가 비어있으므로 Body 데이터 타입을 설명하는 Content-Type 헤더 필드가 들어가지 않는다.

URL 형태로 표현되므로 특정 페이지를 다른 사람에게 공유할 수 있다.

간단한 데이터를 보내도록 설계되어 데이터 전송 양에 한계가 있다.

POST 방식

데이터를 URL이 아닌 HTTP 패킷의 Body에 담아서 서버에 요청한다.

Body에 데이터를 담아 보내므로, Body 데이터의 타입을 설명하는 Content-Type 헤더 필드가 반드시 필요하다.

Content-Type을 명시하지 않을 경우, 기본값으로 application/x-www-form-urlencoded가 사용된다.

Content-Type 종류
application/x-www-form-urlencoded

Body에 key=value 쌍의 데이터를 넣으며, 구분자로 &를 사용한다.

text/plain

Body에 단순 텍스트 데이터를 넣는다.

multipart/form-data

주로 파일 전송에 사용되며, Body의 데이터가 바이너리 데이터임을 알려준다.**

0개의 댓글