본문 바로가기

네트워크

HTTP-메서드 - GET, POST

HTTP 메서드 종류 주요 메서드

• GET: 리소스 조회

• POST: 요청 데이터 처리, 주로 등록에 사용

• PUT: 리소스를 대체, 해당 리소스가 없으면 생성

• PATCH: 리소스 부분 변경

• DELETE: 리소스 삭제

 

HTTP 메서드 종류 기타 메서드

• HEAD: GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환

• OPTIONS: 대상 리소스에 대한 통신 가능 옵션(메서드)을 설명(주로 CORS에서 사용)

• CONNECT: 대상 자원으로 식별되는 서버에 대한 터널을 설정

• TRACE: 대상 리소스에 대한 경로를 따라 메시지 루프백 테스트를 수행

 

 

 

POST 요청 데이터를 어떻게 처리한다는 뜻일까?

 

• 스펙: POST 메서드는 대상 리소스가 리소스의 고유 한 의미 체계에 따라 요청에 포함 된 표현을 처리하도록 요청합니다. (구글 번역)

• 예를 들어 POST는 다음과 같은 기능에 사용됩니다.

• HTML 양식에 입력 된 필드와 같은 데이터 블록을 데이터 처리 프로세스에 제공

• 예) HTML FORM에 입력한 정보로 회원 가입, 주문 등에서 사용

• 게시판, 뉴스 그룹, 메일링 리스트, 블로그 또는 유사한 기사 그룹에 메시지 게시

• 예) 게시판 글쓰기, 댓글 달기

• 서버가 아직 식별하지 않은 새 리소스 생성

• 예) 신규 주문 생성 • 기존 자원에 데이터 추가

• 예) 한 문서 끝에 내용 추가하기

• 정리: 이 리소스 URI에 POST 요청이 오면 요청 데이터를 어떻게 처리할지 리소스마다 따로 정해야 함 -> 정해진 것이 없음

 

POST 정리

• 1. 새 리소스 생성(등록)

• 서버가 아직 식별하지 않은 새 리소스 생성

• 2. 요청 데이터 처리

• 단순히 데이터를 생성하거나, 변경하는 것을 넘어서 프로세스를 처리해야 하는 경우

• 예) 주문에서 결제완료 -> 배달시작 -> 배달완료 처럼 단순히 값 변경을 넘어 프로세스의 상태가 변경되는 경우

• POST의 결과로 새로운 리소스가 생성되지 않을 수도 있음

• 예) POST /orders/{orderId}/start-delivery (컨트롤 URI)

• 3. 다른 메서드로 처리하기 애매한 경우

• 예) JSON으로 조회 데이터를 넘겨야 하는데, GET 메서드를 사용하기 어려운 경우

• 애매하면 POST

'네트워크' 카테고리의 다른 글

HTTP-메서드의 속성  (0) 2022.04.20
HTTP-매서드 PUT ,PATCH ,DELETE  (0) 2022.04.20
HTTP-메서드  (0) 2022.04.20
HTTP-메시지  (0) 2022.04.20
HTTP-비 연결성(connectionless)  (0) 2022.04.20