HTTP의 주요 메서드는 다음과 같다.
이외에도 HEAD, OPTIONS, CONNECT, TRACE 등 다른 메서드도 존재한다.
리소스를 조회하며, 서버에 전달하는 데이터는 query(쿼리 파라미터, 스트링) 을 통해 전달한다.
메세지 바디로 데이터를 전달할 수는 있지만, 보통 실무에서는 데이터를 query에 넣는 것이 일반적이다.
메시지 바디를 통해 서버로 요청하는 데이터 전달한다.
서버는 POST를 통해 요청받은 데이터를 처리한다.
위의 GET과는 달리 메시지 바디를 통해 요청 데이터를 보내며, 서버는 이때 들어온 데이터를 처리하는 모든 기능을 수행한다.
POST를 통해 보내는 데이터는 주로 신규 리소스 등록, 프로세스 처리등에 사용한다.
사용예시
POST 처럼 데이터 바디에 데이터를 전송하지만,
만약 기존에 리소스가 있으면 완전히 대체하고, 리소스가 없으면 생성
( 덮어버림 )
클라이언트가 리소스 위치를 알고 URI 지정
( 클라이언트가 리소스를 식별할 수 있다 )
리소스의 일부분만 변경
리소스를 제거
Cacheable
응답 결과 리소스를 캐시해서 사용 가능한지 여부를 나타낸다.
위의 주요 5개 메서드들 중에서 DELETE를 제외한 4개 메서드들은 캐시가 가능하지만,
실제로는 GET, HEAD 정도만 캐시로 사용한다.
POST, PATCH는 본문 내용 또한 캐시 키로 고려해야 하는데 구현의 어려움으로 거의 사용되지 않는다.