생각 해보면 Http method 중에서 가장 많이 쓰는 method 가 GET 하고 POST 인 것 이다.
그 둘의 차이를 크게 고민해 본적이 없어 처음 적어봅니다!
GET은 가져온다 라는 개념이고, POST는 전달한다라는 개념으로 알고 있으면 될 것 같습니다!
GET 특징
즉! GET은 서버에서 어떤 데이터를 가져와서 보여줄 때 >사용합니다. 어떤 값이나 내용, 상태 등을 바꾸지 않>는 경우에 사용을 하는 것입니다. (값 변경 X)
GET을 표현하면 조회 할때 사용합니다! 값을 변경하지 않는 경우 서버에 있는 값을 보여줄 때 사용 하게 됩니다!!
POST 특징
이에 비해, Post는 서버상의 데이터 값이나 상태를 바꾸기 위해서 사용합니다.
서버에 어떤 데이터를 저장하고, 수정할 때에 POST를 사용하는 것 입니다!
쇼핑몰로 예시를 하면! 상품의 정보를 클라이언트에게 보여주는 부분이 GET에 해당 되며,
상품 정보를 새로 저장 하거나 수정할 때 사용 하는 것을 POST 라고 생각하시면 될 것 같습니다!
GET은 서버의 리소스에서 데이터를 요청할 때, GET은 조회 할 때 사용 되고!
POST는 서버의 리소스를 새로 생성하거나 업데이트할 때 사용한다. POST는 Create 혹은 Update 할 때 사용 된다!
GET 은 URL 파라미터에 요청하는 데이터를 담아 보내기 때문에 HTTP 메시지에 body가 없다.
POST 는 body 에 데이터를 담아 보내기 때문에 당연히 HTTP 메시지에 body가 존재한다.
GET 요청은 멱등이며, POST는 멱등이 아니다.
멱등성 (idempotent) : 첫 번째 수행을 한 뒤 여러 차례 적용해도 결과를 변경시키지 않는 작업 또는 기능의 속성을 말한다!
GET 과 POST 의 차이
GET 은 클라이언트에서 서버로 어떠한 리소스로부터 정보를 요청해여 보여주는 데 사용합니다!
POST는 리소스를 생성(저장)/업데이트하기 위해 서버에 데이터를 보내는 데 사용합니다!
이에 따른 요청 결과 값은 GET은 결과 값이 바뀌지 않고 POST는 결과 값의 바뀔 수 있습니다!