-
HTTP의 메서드 GET과 POST의 차이프로그래밍 기초 공부 2022. 9. 30. 16:21
아홉번째로 포스팅하게 될 내용은 GET과 POST의 차이에 대해서 입니다.
GET 메서드
- URL에 변수를 포함시켜 요청
- URL을 통해서 데이터를 보내는 방식
- URL에 정보가 담겨서 전송
- URL에 길이의 제한이 있어, 전송할 수 있는 정보의 길이가 제한되어 있음
- 퍼머링크로 사용될 수 있음
- URL에 데이터가 노출되어 보안에 취약
- 캐싱이 가능
- Body는 보통 빈 상태로 전송, Body의 데이터를 설명하는 Content-type 헤더필드도 안들어감
ex) id를 넘겨서 게시판의 리스트를 가져올 때
www.mangkyu.com/login?id=mang&pw=kyu // ?마크를 통해 URL의 끝을 알림 // id라는 키에 대해서는 mang(Key)이라는 값(Value)을, pw라는 키에 대해서는 kyu라는 값을 전송 // &를 사용하여 최소한의 보안유지도 없음 -> 개인정보 노출되는 문제
POST 메서드
- 데이터를 서버로 제출하여 추가 또는 수정하기 위함
- URL이 퍼머링크의 기능으로 사용 안 됨
- 데이터를 header의 body에 담겨서 전송
- URL 상에 전달한 정보가 표시되지 않음
- URL 상에 데이터가 노출되지 않아서 기본 보안이 됨
- 전송할 수 있는 데이터의 길이 제한이 없음
- 서버 쪽에 어떤 작업을 명령할 때 사용
- 캐싱 불가
ex) 글을 작성한다고 할 때
www.mangkyu.com/login // GET방식과 달리 URL에 데이터 정보가 없음
GET과 POST의 사용시기
GET은 가져오는 것이고 POST는 수행하는 것
GET은 서버에서 어떤 데이터를 가져와서 보여준다거나 하는 용도이지 서버의 값이나 상태등을 바꾸지 않음
게시판의 리스트라던지 글보기 기능 같은 것이 이에 해당
POST는 서버의 값이나 상태를 바꾸기 위해서 사용
글쓰기를 하면 글의 내용이 DB에 저장이 되고 수정을 하면 DB값이 수정이 되는것이 이에 해당
'프로그래밍 기초 공부' 카테고리의 다른 글
Tomcat과 Nginx란? (0) 2022.10.02 프레임워크란? (0) 2022.10.02 Maven과 gradle (0) 2022.09.26 git ignore란? (1) 2022.09.23 HTTP란? (2) 2022.09.23