HTTP method

MINBOK·2022년 4월 10일

Study

목록 보기
12/12

GET

정의

클라이언트가 서버에게 어떠한 리소스를 보내도록 요청하는데 사용됨,
서버의 리소스를 읽음
ex) 게시판의 게시글 조회

특징

  • 데이터를 URL 주소 끝에 파라미터로 포함하여 전송한다. (쿼리스트링)
    -> 파라미터에 내용이 노출되기 때문에 민감한 데이터를 다룰 때 사용 지양
요청에 body 존재 아니오
성공 응답에 body 존재 예
안전함 예
멱등성 예
캐시 가능 예
HTML 양식에서 사용 가능 예

POST

정의

클라이언트에서 서버로 리소스를 생성하거나 업데이트 하기 위해서 데이터를 보낼 때 사용
ex) 게시판에서 게시글 작성

특징

  • 전송할 데이터를 HTTP 메시지 body 부분에 담아서 서버로 보낸다.
  • 데이터 전송 시 길이 제한이 없어 용량이 큰 데이터를 보낼 수 있다.
요청에 body 존재 예
성공 응답에 body 존재 예
안전함 아니오
멱등성 아니오
캐시 가능 경우에 따라가능하나 거의 구현되지않음
HTML 양식에서 사용 가능 예

PUT

DELETE

HEAD

CONNECT

OPTIONS

TRACE

PATCH

용어 설명

캐시 가능
향후 재사용을 위해 응답을 서버에 저장하는 것
GET / HEAD

안전함
HTTP 메서드가 서버의 상태를 바꾸지 않는 경우, 즉 읽기 작업만 수행하는 메서드는 안전함
GET / HEAD / OPTIONS

멱등성
연산을 여러번 적용하더라도 결과가 달라지지않는 성질
GET / HEAD / PUT / DELETE

총 정리

요청에 body 존재 POST
성공 응답에 body 존재 GET / POST
안전함 GET / HEAD / OPTIONS
멱등성 GET / HEAD / PUT / DELETE
캐시 가능 GET / HEAD
HTML 양식에서 사용 가능 GET / POST

✨ 참고 출처
https://developer.mozilla.org/en-US/docs/Glossary/cacheable
https://datatracker.ietf.org/doc/html/rfc7231#section-4.2.3\https://developer.mozilla.org/ko/docs/Glossary/Safe
https://developer.mozilla.org/ko/docs/Glossary/Idempotent
https://noahlogs.tistory.com/35
https://developer.mozilla.org/ko/docs/Web/HTTP/Methods
https://velog.io/@songyouhyun/Get%EA%B3%BC-Post%EC%9D%98-%EC%B0%A8%EC%9D%B4%EB%A5%BC-%EC%95%84%EC%8B%9C%EB%82%98%EC%9A%94

0개의 댓글