HTTP(Hypertext Transfer Protocol)는 클라이언트와 서버 간에 데이터를 전송하기 위한 프로토콜이다.
HTTP는 다양한 메서드(methods)를 제공하여 서버에 요청을 보내고, 응답을 받을 수 있는데
가장 널리 사용되는 HTTP 메서드는 아래와 같다.
1. GET : 리소스를 가져오기 위한 메서드로 주로 서버로부터 데이터를 요청하는 용도로 사용
2. POST : 서버에 데이터를 제출하는 메서드로 주로 데이터를 생성하거나 업데이트하는 용도로 사용
3. PUT : 서버에 리소스를 업로드하는 메서드로 주로 데이터를 생성하거나 업데이트하는 용도로 사용
4. DELETE : 서버에서 리소스를 삭제하는 메서드
5. PATCH : 리소스의 일부를 업데이트하는 메서드로 PUT과 유사하지만, 리소스 전체를 업데이트하는 PUT과는 달리,
리소스의 일부만을 업데이트
6. HEAD : GET 메서드와 유사하지만, 서버는 응답 본문(body)을 반환하지 않고, 헤더(header) 정보만 반환
7. OPTIONS : 서버에서 지원하는 메서드의 종류를 반환
8. TRACE : 서버로 보낸 요청에 대한 응답을 반환 이 메서드는 보안 상의 이유로 대부분의 서버에서 사용하지 않음.
POST와 PUT은 모두 서버에 데이터를 전송하는 HTTP 메서드이지만 이 둘은 목적과 사용 방법이 다르다.
POST는 주로 새로운 리소스를 생성하거나 기존 리소스를 변경하는 데 사용된다.
클라이언트가 POST 요청을 보내면 서버는 해당 요청을 수신하고, 요청 본문(body)에 담긴 데이터를 이용하여
새로운 리소스를 생성하거나 기존 리소스를 변경한다.
PUT은 주로 기존 리소스를 업데이트하는 데 사용된다. 클라이언트가 PUT 요청을 보내면
서버는 해당 요청을 수신하고, 요청 본문에 담긴 데이터를 기반으로 리소스를 업데이한다.
PUT 요청을 보내면, 해당 리소스의 전체 내용을 업데이트합니다.
따라서, POST와 PUT의 가장 큰 차이점은 리소스의 생성 및 변경 방법에 있다는 것이다.
POST는 여러 번 반복적으로 요청을 보낼 경우 동일한 리소스가 중복 생성될 수 있는 반면,
PUT은 동일한 요청을 여러 번 보내더라도 리소스가 덮어씌워져서 항상 같은 결과를 반환한다.
'네트워크' 카테고리의 다른 글
VPN 터널링과 SSH가 함께 사용될 때, 작동 방식 (0) | 2023.09.13 |
---|---|
이더넷(Ethernet)이란 무엇인가? (0) | 2023.06.07 |
원격 서버의 포트 개방 여부 확인방법 (0) | 2023.03.28 |
Open SSL? TLS? 무슨 차이일까? (0) | 2023.01.28 |
WebSocket vs WEBRTC 개념정리 (0) | 2022.08.27 |