Get method와 Post method 차이는??
💡요약
Get은 가져온다는 개념
Post는 수행한다는 개념
Get
- 요청하는 데이터가 HTTP Request Message의 Header 부분에 url 이 담겨서 전송
- 클라이언트에서 서버로 어떠한 리소스로 부터 정보를 요청하기 위해 사용되는 메서드
- url 상에 ? 뒤에 데이터가 붙어 request 를 보냄
- url 이라는 공간에 담겨가기 때문에 전송할 수 있는 데이터의 크기가 제한적
- 보안이 필요한 데이터에 대해서는 데이터가 그대로 url 에 노출되므로 GET방식은 적절하지 않음 (ex. password)
Post
- 요청하는 데이터가 HTTP Request Message의 Body부분에 담겨서 전송
- 리소스를 생성/업데이트하기 위해 서버에 데이터를 보내는 데 사용
- HTTP 메세지의 Body는 길이의 제한없이 데이터를 전송 가능
- POST는 데이터가 Body로 전송되고, 내용이 눈에 보이지 않아 GET보다 보안적인 면에서 안전하다고 생각할 수 있지만, POST 요청도 크롬의 개발자 도구, Fiddler와 같은 툴로 요청 내용을 확인할 수 있기 때문에 민감한 데이터의 경우에는 반드시 암호화해 전송해야 함
결론
Get | Post | |
캐시 | ⭕ | ❌ |
브라우저 기록 | ⭕ | ❌ |
북마크 추가 | ⭕ | ❌ |
데이터 길이 제한 | ⭕ | ❌ |
HTTP 응답 코드 | 200(ok) | 201(Created) |
언제 주로 사용? | 리소스 요청 | 리소스 생성 |
리소스 전달 방식 | 쿼리스트링 | HTTP Body |
idempotent | ⭕ | ❌ |
LIST
'#5 컴퓨터 과학(CS) 🪄 > 5-2 Network' 카테고리의 다른 글
[Network] 데이터 통신 기초 (0) | 2023.09.13 |
---|---|
[Network] 데이터 통신 기초 (0) | 2023.09.13 |
[Network] FTP와 SFTP의 차이 (0) | 2023.01.16 |