상세 컨텐츠

본문 제목

HTTP 메소드

성장일지

by 모모87 2024. 6. 21. 11:46

본문

 

HTTP 메소드란


HTTP(하이퍼텍스트 전송 프로토콜)는 클라이언트와 서버 간에 데이터를 주고받는 프로토콜입니다.

HTTP는 다양한 종류의 요청을 정의하고 있으며, 이 요청들은 HTTP 메소드(HTTP methods)라고 불리는 특정한 명령어로 식별됩니다. 각각의 HTTP 메소드는 서버에서 수행할 동작을 지정하며, 웹 개발에서 클라이언트가 서버로 보내는 요청의 성격을 결정짓는 중요한 요소입니다.


많이 사용하는 기본적인 메소드


GET
: 데이터를 받기 위해 사용하는 메소드입니다.

  • 용도: 리소스를 요청하기 위해 사용됩니다.
  • 특징: 요청한 URI의 리소스를 서버에서 가져옵니다. 데이터를 조회할 때 주로 사용됩니다. 데이터를 서버로 보내는 것이 아니라, 서버로부터 데이터를 받아오는 목적으로 사용됩니다.
  • 부작용: GET 요청은 보통 부작용이 없어야 하며, 서버의 상태를 변경시키지 않아야 합니다.

 


POST
: 새로운 리소스를 생성하거나 기존 리소스를 수정하기 위해 서버에 데이터를 보내는 메소드입니다.

  • 용도: 리소스를 생성하거나 수정하기 위해 사용됩니다.
  • 특징: 클라이언트에서 서버로 데이터를 전송하여 리소스를 생성하거나 수정할 때 사용됩니다. 예를 들어, 폼 데이터를 서버로 전송할 때 사용됩니다.
  • 부작용: POST 요청은 서버의 상태를 변경할 수 있습니다. 새로운 데이터를 추가하거나 기존 데이터를 수정할 수 있습니다.

 


PUT
: 새로운 리소스를 생성하거나 기존 리소스를 수정하기 위해 서버에 데이터를 보내는 메소드입니다.

  • 용도: 특정 URI에 리소스를 저장하기 위해 사용됩니다.
  • 특징: 서버에서 제공하는 리소스의 내용을 클라이언트가 지정한 리소스로 변경합니다. 일반적으로 리소스 전체를 업데이트할 때 사용됩니다.
  • 부작용: PUT 요청은 리소스의 완전한 교체를 의미하므로, 주의해서 사용해야 합니다.
  • .

 


DELETE
: 지정한 리소스를 삭제하는 메소드입니다.

  • 용도: 특정 URI에 있는 리소스를 삭제하기 위해 사용됩니다.
  • 특징: 지정된 URI에서 특정 리소스를 삭제합니다. 리소스를 완전히 제거하는 목적으로 사용됩니다.
  • 부작용: DELETE 요청은 서버의 상태를 변경할 수 있습니다. 삭제된 리소스는 복구할 수 없으므로 주의해서 사용해야 합니다.


PATCH
: 기존 리소스의 부분적인 수정을 위한 메소드입니다.

  • 용도: 리소스의 일부를 수정하기 위해 사용됩니다.
  • 특징: 클라이언트가 서버에게 리소스의 일부를 수정하도록 요청하는 메소드입니다. PUT과는 달리 리소스의 일부만을 업데이트할 수 있습니다.
  • 부작용: PATCH 요청은 서버의 상태를 변경할 수 있습니다. 리소스의 일부를 수정하기 때문에, 전체 리소스를 업데이트하는 PUT보다 세밀한 조정이 가능합니다.

 

{
    id: 'codeit',
    name: '코드잇',
    email: 'codeit@codeit.com',
    password: '1234'
}


예를 들어, 위와 같은 데이터가 있다면, id, name, email, password 전체를 생성 또는 변경하는데는 PUT을 사용하고, 기존에 있던 데이터에 name만 변경할 때는 PATCH를 사용합니다.

멱등성을 가지지 않습니다.

 


HEAD
: 특정 리소스를 GET 메소드로 요청했을 때 돌아올 헤더를 받기 위한 메소드입니다.

  • 용도: GET 메소드와 유사하지만, 응답 본문(body)을 반환하지 않고 헤더 정보만 반환합니다.
  • 특징: 클라이언트는 서버의 응답 헤더를 통해 리소스의 메타데이터를 가져올 수 있습니다. 주로 리소스의 상태를 확인하기 위해 사용됩니다.

 


OPTIONS
: 주어진 URL 또는 서버에 대해 허용된 통신 옵션을 받기 위한 메소드입니다.

  • 용도: 특정 리소스에 대해 지원되는 HTTP 메소드를 확인하기 위해 사용됩니다.
  • 특징: 서버는 클라이언트에게 해당 리소스에 대해 어떤 메소드가 지원되는지 알려줍니다. 주로 CORS(Cross-Origin Resource Sharing) 요청에서 사용됩니다.

 

 

CONNECT
: 요청한 리소스에 대해 양방향 연결을 시작하는 메소드입니다.

  • 용도: 목적 리소스로의 터널을 설정하기 위해 사용됩니다.
  • 특징: 클라이언트와 서버 간의 TCP/IP 터널을 설정하도록 서버에 요청합니다. 일반적으로 HTTPS와 함께 사용됩니다.

 

요약

 

HTTP 메소드는 클라이언트가 서버에게 어떤 동작을 원하는지 명확하게 전달합니다. 각 메소드는 특정한 의미와 목적을 가지며, RESTful API와 같은 웹 개발에서 중요한 역할을 합니다. 올바른 HTTP 메소드의 사용은 웹 애플리케이션의 성능, 보안, 유지보수성을 높이는 데 기여합니다.

 

반응형

'성장일지' 카테고리의 다른 글

리액트 Virtual DOM  (0) 2024.06.29
상품 리스트 페이지 코드 리뷰  (0) 2024.06.25
렉시컬 스코프  (0) 2024.06.21
리액트 명령어 정리  (0) 2024.06.19
로그인 회원가입 유효성 검사 스크립트 & 코드리뷰  (0) 2024.06.15

관련글 더보기