일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 24511
- sloved.ac
- 장고
- 6730
- 알고리즘
- SWEA
- sovled.ac
- java
- 라이브러리
- 23971
- Algorithm
- 15965
- solved.ac
- 파이썬
- 20006
- 25379
- 2866
- 17087
- 1342
- Django
- 프로그래머스
- 자바
- PS
- 11688
- 사용자정의필터
- 백준
- PYTHON
- pccp
- 9081
- programmers
- Today
- Total
코깽이의 코딩일기
GET과 POST의 차이 본문
들어가며
웹 개발을 처음 시작하게 되면 HTTP의 다양한 메서드들을 접하게 되는데 그중에서도 get방식과 post방식에 대해서 제일 먼저 듣게 된다.
기본적으로 둘 다 클라이언트에서 서버로 무언가를 요청할 때 사용되는데 특징과 차이점에 대해서 살펴보자
GET란?
클라이언트에서 서버로 어떠한 리소스로 부터 정보를 요청하기 위한 메서드이다.
GET 요청의 특징
- 데이터를 URL의 쿼리 파라미터로 첨부하여 전송한다.
- 주로 정보를 요청할 때 사용한다.
- 브라우저에서 캐시될 수 있어서 동일한 요청을 반복 시 서버로 요청을 보재니 않고 캐시 된 데이터를 활용할 수 있다.
- URL에 데이터가 노출되므로 보안에 민감한 데이터는 전송하기에 적합하지 않다.
POST란?
클라이언트에서 서버로 리소스를 생성하거나 업데이트하기 위해 데이터를 보낼 때 사용하는 메서드이다.
POST 요청의 특징
- 데이터를 요청 본문( HTML form )에 포함하여 전송한다.
- 주로 데이터를 서버로 보내거나 서버의 상태를 변경할 때 사용한다.
- 데이터가 URL에 노출되지 않으므로 GET보다는 보안 측면서에서 더 우수하다.
- 브라우저에서 데이터를 캐시하지 않으며, 재전송 시 사용자의 확인을 받는다.
GET과 POST의 차이점
특징들을 살펴보면 대략적인 차이점을 확인할 수 있다.
- 사용목적 : GET은 서버의 리소스에서 데이터를 요청할 때( Select ), POST는 서버의 리소스를 생성하거나 업데이트할 때 ( Create, Update )
- body의 유무 : GET은 URL 파라미터에 요청하는 데이터를 담아보내기에 HTTP 메시지에 body가 없다. 하지만 POST는 body에 데이터를 담아 보내기에 때문에 존재한다.
- 멱등성 : GET 요청은 멱등이며, POST는 멱등이 아니다.
멱등성이란?
CS나 웹 개발에서 중요한 개념 중 하나로, 연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질을 의미한다.
즉 같은 요청을 여러번 보내더라도 처음부터 끝까지 동일한 효과를 가지는 특성이다.
분산 시스템에서 중요한 역할을 하며, 동일한 요청이 여러 노드에 전달되거나 네트워크 오류로 중복 요청이 발생하는 상황에서도 시스템의 안정성과 데이터 일관성을 보장하는 데 도움이 된다.
'코딩 > 지식' 카테고리의 다른 글
Library와 Framework 차이 (0) | 2023.08.22 |
---|