HTTP method

MINBOK·2022년 4월 10일
0

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개의 댓글