HTTP 메서드
여러개의 HTTP 메서드가 존재합니다.
자주쓰는 HTTP 메서드로는 GET, POST, PUT, PATCH, DELETE 를 뽑을수 있고,
그 외에도 OPTIONS, HEAD, CONNECT, TRACE 메서드가 존재합니다.
GET
GET은 가장 흔히 쓰이는 메서드입니다. 주로 서버에게 리소스를 요청할 때 쓰이게 됩니다.
ex ) GET /index.html/ HTTP/1.1
POST
POST도 자주 쓰이는 메서드이죠. 서버에 입력 데이터를 전송하기 위해 설계되었습니다.
로그인 동작이 일상생활에서 볼 수 있는 흔한 POST 동작 중 하나입니다.
실제로, HTML의 폼을 지원하기 위해 흔히 사용되고, 폼에 담긴 데이터는 서버로 보내지게 되며, 서버에서는 데이터를 받아 필요한 곳에 사용하게 됩니다.
ex ) POST /user/login/ HTTP/1.1
id=hello
PUT
PUT은 수정을 위한 메서드 입니다. 부분 수정이 이루어지는게 아니라, 어떤 데이터에 대한 전체적인, 통째로 수정이 이루어집니다. 완전한 교체만을 허용합니다.
서버가 요청의 본문을 가지고, 요청 URL의 이름대로 새 문서를 생성해내거나, 이미 존재하는 경우에는 교체를 해줍니다.
ex) PUT /post-list/ HTTP/1.1
PATCH
PATCH 메서드는 리소스의 부분적인 수정을 할 때에 사용됩니다.
PUT과 리소스를 수정한다는 점에서는 같지만, PUT은 완전한 교체, PATCH는 부분 수정을 위한 메서드라는 차이점이 있습니다.
ex ) PATCH /user/profile/ HTTP/1.1
DELETE
DELETE 메서드는 단어 그대로 리소스를 삭제하기 위해 사용됩니다. 서버에게 URL에 대한 리소스를 삭제 요청을 합니다.
ex) DELETE /post/1/ HTTP/1.1
여기까지가 주로 사용하는 대표적인 5가지 메서드 였습니다.
나머지 메서드들도 간단히 정리해 보았습니다.
HEAD
HEAD 메서드는 GET처럼 동작하지만, 서버는 HEAD 요청에 대한 응답으로 헤더만을 돌려줍니다. 본문은 반환되지 않습니다.
응답 헤더의 상태코드를 통해, 개체 존재 여부나 리소스의 변경 여부를 체크해 볼 수 있습니다.
HEAD 요청으로 반환되는 헤더와 GET 요청으로 반환되는 헤더는 정확히 일치해야 합니다.
TRACE
TRACE 메서드는 클라이언트에게 자신의 요청이 서버에 도달 했을시에, 어떻게 보이게 되는지 알려줍니다.
주로 메시지 진단을 위해 사용 되며, 본문과 함께 요청할 수 없습니다.
OPTIONS
OPTIONS 메서드는 웹 서버에게 어떤 HTTP 메서드가 지원되는지 물어 볼 수 있도록 해줍니다.
리소스에 대해 어떤식으로 접근하여야 하는지 서버로부터 응답을 받을 수 있습니다.
CONNECT
CONNECT 메서드는 리소스에 대해 양방향 연결을 시작하는 메서드 입니다.
터널을 열기 위해서 사용 될 수 있습니다. 예를 들어보면, SSL을 사용하는 웹에 접속하는데 사용 할 수 있습니다.
'아카이브' 카테고리의 다른 글
200117 / TIL (0) | 2020.01.17 |
---|---|
200115 - 16 / TIL (0) | 2020.01.16 |
2020.01.12~13 / TIL (0) | 2020.01.13 |
200109 / TIL (0) | 2020.01.10 |
02. HTTP 응답코드 (HTTP Response Code) (0) | 2020.01.09 |