Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- react
- jsEvent Loop
- NextJs
- 원티트 프리온보딩인턴십 1주차
- 알고리즘
- Mac OS NVM
- toast err
- react portal
- Client-Side Navigation
- 프로젝트
- 광고지구
- 식별자란
- Til
- NVM
- JavaScript
- JS
- Passed by Value
- Redux
- 유령 의존성
- 회고록
- 향해99
- git
- 인풋태그 엔터
- Node
- CPU와 GPU의 차이점
- input error
- CloudFront 무효화
- 원티드프리온보딩
- 원티드인턴십
- next/link
Archives
- Today
- Total
SUIN
GET , POST 차이점 본문
728x90
GET
- GET 은 클라이언트에서 서버로 어떠한 리소스로 부터 정보를 요청하기 위해 사용되는 메서드
- GET을 통한 요청은 URL 주소 끝에 파라미터로 포함되어 전송되며, 이 부분을 쿼리 스트링 (query string) 이라고 부른다.
GET 방식 특징
- URL에 쿼리 스트링(데이터)을 붙여서 서버에 전송
- 데이터를 Header(헤더)에 포함하여 전송
- URL에 정보들이 그대로 노출되기 때문에 POST 방식보다 상대적으로 보안에 취약
- 캐싱이 가능
- POST 방식보다 상대적으로 전송 속도가 빠름
- 전송하는 데이터양에 한계가 있음 (브라우저마다 GET 요청 길이 제한 존재)
- 브라우저 히스토리에 기록이 남음
POST
- POST는 클라이언트에서 서버로 리소스를 생성하거나 업데이트하기 위해 데이터를 보낼 때 사용 되는 메서드다
-POST는 전송할 데이터를 HTTP 메시지 body 부분에 담아서 서버로 보낸다. ( body 의 타입은 Content-Type 헤더에 따라 결정 된다.)
POST 방식 특징
- 데이터들을 URL뒤에 붙여서 서버로 보내는 것이 아닌 Body에 담아서 전송
- 요청 헤더의 Content-Type에 콘텐츠 타입을 명시
- 데이터들이 URL에 노출되지 않기 때문에 GET 방식보다 상대적으로 보안적
- 데이터들을 Body에 담기 때문에 서버로 보내는 데이터의 양은 제한 없음
- URL에 데이터가 노출되지 않으므로 캐싱 불가
- 클라이언트에서 인코딩, 서버에서 디코딩
- 요청받는 시간제한 존재
- 브라우저 히스토리에 기록이 남지 않음
GET 과 POST 의 차이점
- 사용목적 : GET은 서버의 리소스에서 데이터를 요청할 때, POST는 서버의 리소스를 새로 생성하거나 업데이트할 때 사용한다.
- DB로 따지면 GET은 SELECT 에 가깝고, POST는 Create 에 가깝다고 보면 된다.
- 요청에 body 유무 : GET 은 URL 파라미터에 요청하는 데이터를 담아 보내기 때문에 HTTP 메시지에 body가 없다. POST 는 body 에 데이터를 담아 보내기 때문에 당연히 HTTP 메시지에 body가 존재한다.
- 멱등성 (idempotent) : GET 요청은 멱등이며, POST는 멱등이 아니다.
- 멱등 : 연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질을 의미
참고
'개발지식 백과사전' 카테고리의 다른 글
[네트워크] TCP 3-way-handshake , 4-way-handshake (0) | 2023.04.17 |
---|---|
CORS (0) | 2022.03.22 |
TCP 와 UDP (0) | 2022.03.22 |
callback , promise, async/await (0) | 2022.03.22 |
동기와 비동기 (0) | 2022.03.22 |