GET & POST

참고
블로그

GET은 서버에서 데이터를 가져올 때 사용된다. 어떤 값이나 내용, 상태 등을 바꾸지 않는 경우에 사용된다. POST는 서버의 데이터 값이나 상태를 바꾸기 위해 사용된다.
예를 들어 게시판의 글 목록을 보거나 내용을 보는 경우는 GET 방식에 해당되고, 해당 글의 내용을 수정하는 경우에 POST가 사용된다.
정확히 분류하자면 데이터 생성에는 POST, 수정은 PUT or PATCH, 삭제에는 DELETE method가 사용된다.

GET

GET method는 클라이언트에서 서버에 정보를 요청하기 위해 사용된다. 데이터를 읽거나(Read), 검색(Retrieve)할 때에 사용된다. 데이터를 수정하지 않기 때문에 데이터 변형의 위험성이 적다. 동일한 요청으로 연산을 여러 번 하더라도 동일한 결과가 나와야 한다는 특징이 있다.
GET은 요청을 전송할 때, URL 주소 끝에 요청정보가 포함되어 전송되며, 이 부분을 쿼리 스트링이라고 부른다.
ex) www.example-url.com/resources?name1=abcd&name2=efgh

POST

POST method는 리소스를 생성하거나 수정할 때 서버에 요청을 보내는 데 사용된다. GET과 달리 전송해야할 데이터를 HTTP 메시지의 Body에 담아서 전송한다. 때문에 안전하다고 생각할 수 있지만, 개발자 도구와 같은 툴로 요청 내용을 확인할 수 있기 때문에 중요 데이터의 경우 암호화가 필요하다.