** GET 과 POST의 차이점을 아래와 같이 3가지로 나누어 정리해보았다.

1. GET은 요청을 URL에 붙이므로 북마크가 가능하다.

[예시 URL]

https://www.soundarea.com/?sound=20&music=3

다음과 같이 URL이 있을 때, ? 뒤에 sound가 key가 되고 = 뒤에는 value 다.

즉, sound는 20이라는 value를 가지고 music은 3이라는 value를 가지게 된다.

URL 형식으로 인코딩 된 쿼리 정보를 만들어 송신한다.

URL 주소와 물음표 뒤에 붙은 키와 값의 쌍이 연속된 부분이 쿼리 문자열이다.

여러 개의 파라미터가 있을 때는 **앰퍼샌드(&)**로 연결한다.

하지만, 보안상 취약하므로 사용하지 않는 것을 권장한다.

반면, POST는 폼의 파라미터를 URL에 포함하는 것이 아니라 요청한 본문에 포함한다.

GET처럼 요청 내용을 쉽게 볼 수 없고 북마크 할 수도 없기 때문에 보안에서는 GET이 더 낫다.

물론, 주소 창에 표시되지 않는다고 해서 POST가 무조건 안전한 것은 아니다. 기밀 유지를 위해서는 SSL 등의 암호화 통신을 선호한다.

2. GET으로 송신할 수 있는 데이터 크기에는 제한이 있다.

POST 데이터 크기는 무제한인 반면 GET의 쿼리 정보는 제한이 있다.

3. GET 응답은 캐시되지만 POST 응답은 캐시되지 않는다.