TIL

HTTP Method 종류 및 사용 방법(GET, POST, PUT, DELETE)

빈코 2024. 4. 19. 10:56

Http Method

개요

안녕하세요 빈코입니다! 오늘은 웹 개발자라면 누구나 접해봤을 HTTP에 대해 포스팅하려 합니다. HTTP는 하이퍼텍스트 전송 프로토콜로 웹 브라우저와 웹 서버 간에 데이터를 주고받을 때 사용되는 프로토콜입니다.

 

이 프로토콜은 클라이언트(웹 브라우저)가 서버로 요청을 보내고, 서버가 클라이언트에게 응답을 보내는 방식으로 동작하는데, 주요 메서드로는 GET, POST, PUT, DELETE가 있습니다. 하단에서 좀 더 자세히 다뤄볼게요😄

 

HTTP Method📙

HTTP Method는 위에서 언급한 바와 같이 GET,POST,PUT,DELETE가 대표적입니다. GET은 조회, POST는 등록, PUT은 수정, DELETE는 삭제에 사용하죠. 더 다양한 메서드로는 아래와 같습니다.

 

Method Content
GET 지정된 리소스의 표시를 요청합니다. 주로 데이터를 가져오는 데 사용됩니다
POST 지정된 리소스에 새로운 데이터를 제출합니다. 주로 서버로 데이터를 보낼 때 사용됩니다
PUT 지정된 리소스에 새로운 데이터를 저장하거나 업데이트합니다. 리소스가 없는 경우에는 새로운 리소스를 생성합니다.
DELETE 지정된 리소스를 삭제합니다.
HEAD GET 메서드와 유사하지만, 서버는 응답 본문을 반환하지 않고 헤더만 반환합니다. 주로 리소스의 메타데이터를 요청할 때 사용됩니다
OPTIONS 지정된 리소스가 지원하는 HTTP 메서드를 요청합니다
PATCH 리소스의 부분적 업데이트를 요청합니다
TRACE 클라이언트가 보낸 요청을 테스트하는 데 사용됩니다. 주로 디버깅 목적으로 사용됩니다
CONNECT 목적지 서버로의 터널을 설정하기 위해 사용됩니다. 주로 프록시로의 연결을 설정할 때 사용됩니다

 

 

GET📘

GET 메서드를 조금 더 살펴보자면, 데이터를 전송할 때 GET 요청은 서버로 전송하지 않고, URL의 쿼리 문자열에 데이터를 포함하여 전달됩니다. 또한, GET 요청은 응답을 캐시할 수 있어서 동일한 GET 요청이 여러 번 발생할 때, 서버는 캐시 된 응답을 반환하여 네트워크 트래픽을 줄일 수 있습니다.

 

GET /example
HOST: binco.com

 

위 요청은 'binco.com' 서버로부터 '/example' 리소스의 표시를 요청하는 예시입니다.

 

GET 요청과 관련된 오류는 요청한 리소스가 서버에 없을 때 발생하는 404 에러, 요청이 잘못된 형식으로 인코딩 되어 발생하는 400 에러, 서버가 요청을 거부했을 때 발생하는 403 에러, 요청이 서버에 도달하기 전에 연결이 끊겼을 때 발생하는 408 에러가 있습니다.

 

GET 요청은 주로 웹 브라우저에서 웹 페이지를 요청할 때, 이미지나 자바스크립트 파일 등 정적 자원을 요청할 때, 검색 엔진이 웹 페이지를 수집할 때 등 사용됩니다😁

 

POST📒

POST 메서드의 특징으로는 데이터를 전송할 때 요청 본문에 포함하여 서버로 전송됩니다. 그렇기에 GET 메서드보다 보안적으로 조금 더 우수하다고 볼 수 있습니다. 비밀번호와 같은 민감한 정보는 POST 요청을 통해 전송하는 것이 좋습니다. 또한, POST 요청은 요청 본문에 데이터를 포함하기 때문에, 서버 또는 클라이언트에서 요청 본문 크기를 제한할 수 있습니다.

 

POST /submit HTTP/1.1
Host: binco.com
Content-Type: application/x-www-form-urlencoded

username=binco&password=1234

 

위 요청은 'binco.com' 서버로 '/submit' 리소스에 폼 데이터를 제출하는 회원가입 예시입니다. 

 

POST 요청과 관련된 오류는 요청한 리소스가 서버에 없을 때 발생하는 404 에러, 요청이 잘못된 형식으로 인코딩 되어 있을 때 발생하는 400 에러, 서버가 요청을 거부했을 때 발생하는 403 에러, 요청이 서버에 도달하기 전에 연결이 끊겼을 때 발생하는 408 에러, 요청 본문의 크기가 서버에서 허용하는 최대 크기를 초과했을 때 발생하는 413 에러 등이 있습니다.

 

POST 요청은 주로 로그인 폼 데이터를 제출할 때, 사용자가 양식을 제출하여 새로운 게시물을 게시할 때, 파일 업로드를 할 때, 사용자가 정보를 업데이트할 때 등 사용됩니다😁

 

마치며

지금까지 HTTP Method에 대해 알아보았습니다. 사실 개발을 하다 보면 주로 사용하는 Method는 GET 요청과 POST 요청입니다. 하지만 POST와 PUT은 구분해서 사용하는 것이 좋습니다. POST는 새로운 데이터를 계속 생성하기 때문에 요청 시마다 데이터를 생성하지만, PUT은 사용자가 데이터를 지정하고 수정하는 것이기 때문에 같은 요청을 계속하더라도 데이터가 계속 생성되지 않습니다.

 

각각의 Method의 장단점을 활용하여 각자 개발에 맞는 구성을 선택하면 좋을 것 같네요😊


👨‍👩‍👦‍👦 오픈채팅방 운영

취업을 준비하는 예비 개발자분들을 위한 질문&답변할 수 있는 공간을 만들었습니다. 취업과 이직을 하기 위해서 어떤 걸 중점적으로 준비해야 하는지부터 포트폴리오&이력서 작성법 등 다양한 질문들을 받고 답변을 드립니다. 참여하셔서 다양한 정보 얻고 가시면 좋을 것 같네요😁

 

참여코드 : 456456

https://open.kakao.com/o/gVHZP8dg

 

비전공 개발자 취업 준비방(질문&답변)

#비전공 #개발자 #취업 #멘토링 #부트캠프 #국비지원 #백엔드 #프론트엔드 #중소기업 #중견기업 #자바 #Java #sql

open.kakao.com

반응형