발전하는 개발자가 되자
Http 프로토콜 에서 get 과 post 의 차이 본문
get 과 post 의 차이
get 과 post는 무엇일까.
http 메소드중 하나 서버에 데이터를 주고 받을 때 사용하는 메소드 get
은 select
성격을 갖고있다. post
는 서버의 값이나 상태를 바꿀 때 사용한다.
get 특징
get
은 데이터를 조회 하는데 사용하는 메소드다.get
으로 서버에 데이터를 포함해 보낼 수도 있다.
그럴 경우에는 url
에 정보들 담아 요청을 보낸다.
/RegisterDao.jsp?name1=value1&name2=value2
? key = value 형태로 데이터를 보낸다.
post 특징
get
과 다르게 http 메세지의 바디부분에 데이터를 담아 요청을 보낸다. post
는 http body
에 정보를 담아 get
보다는 더 많은 데이터를 보낼 수 있다. 또한 url
이 간소화 된다.
하지만 body
에 담고 url
에 데이터가 안보인다 해도 안전한 것은 아니다. 얼마든지 Fiddler
와 같은 툴로 요청과 데이터를 확인할 수 있다. 따라서 민감한 데이터는 암호화를 통해 보호 해야한다.
또한 post
로 데이터를 삭제 수정 할 수 있지만 메소드가 어떤 행동을 하는지 명확하게 하기 위해 delet
와 put
, patch
등으로 구분해서 사용하자.
get으로 데이터를 보내면 장점?
post
는 url
로 같은 요청을 보내려면 http body
에 데이터를 담아야 하기 때문에 어렵다. 하지만 get
으로 데이터를 보내면 url
에 데이터가 담기기 때문에 url
만으로 요청을 서버에 전달 할 수있다.
정리
get
은 데이터를 조회 할때 사용하자.post
는 데이터를 서버에 입력 할때 사용하자
삭제와 수정은 delet
, put
, patch
등을 사용하자.
참고
https://blog.outsider.ne.kr/312#recentComments
https://hongsii.github.io/2017/08/02/what-is-the-difference-get-and-post/
https://www.javatpoint.com/get-vs-post
'개발공부 > CS' 카테고리의 다른 글
REST full, REST API 란 무엇 일까? (1) | 2019.05.27 |
---|---|
프로세스(process)와 스레드(thread) (0) | 2019.02.13 |
JPA, ORM 그리고 영속성 (0) | 2019.02.09 |