HTTP 메소드란?
HTTP 메소드란 클라이언트와 서버 사이에 이루어지는 요청(Request)과 응답(Response) 데이터를 전송하는 방식을 말한다. 쉽게 말하면, 서버에 주어진 리소스에 수행하길 원하는 행동, 서버가 수행해야 할 동작을 지정하는 요청을 보내는 방법이다.
HTTP 메소드는 9가지 종류로 구성되어 있다.
- GET : 리소스 취득. URL(URI) 형식으로 웹서버측 리소스(데이터)를 요청
- HEAD : 메세지 헤더(문서 정보) 취득. GET과 비슷하나, 실제 문서를 요청하는 것이 아니라 문서 정보를 요청. 이에 따라 HTTP 응답 메세지에 본문(Body) 없이 HTTP 헤더 정보만을 보냄
- POST : 내용 전송(파일 전송도 가능). 클라이언트에서 서버로 어떤 정보를 제출하면, 요청 데이터의 HTTP헤더의 일부 항목을 변경. 요청된 리소스가 새로 작성된 또 다른 것이면, 새로운 리소스에 대한 URL 정보 포함하여 응답
- PUT : 내용 갱신 위주(파일 전송도 가능). POST 처럼 정보를 서버로 제출하는 것으로 형식은 동일하지만 갱신 위주임. (PUT은 클라이언트측이 서버측 구현에 관여하는 것이므로 보다 세밀한 POST를 더 많이 사용)
- DELETE : 웹 리소스 제거(파일 삭제)
- OPTIONS : 대상 리소스에 대한 통신 가능 옵션(메소드)을 설명
- TRACE : 요청 리소스가 수신되는 경로를 보여줌(거의 사용 안함)
- CONNECT : 대상 자원으로 식별되는 서버에 대한 터널을 설정(거의 사용 안함)
- PATCH : 프록시 서버와 같은 중간 서버 경유(거의 사용 안함)
보안상의 이유로, 대부분의 웹서버가 GET, POST 2개 또는 OPTIONS 포함 3개 만을 허용하는 경우가 일반적이라고 한다.
참고
정보통신기술용어해설 - HTTP Request Method, HTTP Request Type
'Today I Learned' 카테고리의 다른 글
웹 페이지 렌더링 방식 - CSR / SSR / SSG (0) | 2023.10.30 |
---|---|
Ajax란? (2) | 2023.10.14 |
브라우저의 동작 원리 (0) | 2023.09.27 |
[git] git flow - 브랜치 전략 (0) | 2023.09.15 |
[git] branch merge 방법과 특징 (0) | 2023.09.13 |