HTTP GET vs POST?

2023. 3. 17. 17:28CS

728x90

먼저 간단한 결론부터 내자면 다음과 같다.

GET은 주로 데이터를 요청하고, POST는 데이터를 전송하는 데 사용됩니다.

 

GET은 데이터를 요청하는 데 사용됩니다.

이 메소드는 URL에 데이터를 포함시켜 요청을 보냅니다.

예를 들어, 웹 페이지를 열면 브라우저는 GET 요청을 보내 해당 페이지에 필요한 HTML 파일 및 이미지 파일 등을 서버에서 받아옵니다. GET은 브라우저에서 캐시된 데이터를 사용하여 빠르게 로드할 수 있지만,

보안에 취약할 수 있으므로 보안이 중요한 데이터 전송에는 사용되지 않아야 합니다.

 

반면 POST 데이터를 전송하는 사용됩니다.

메소드는 요청 바디에 데이터를 포함시켜 요청을 보냅니다.

예를 들어, 로그인 폼을 작성하고 제출하면, 브라우저는 POST 요청을 보내 해당 데이터를 서버에 전송합니다.

POST 보안성이 높아 GET보다 많은 데이터 전송 사용됩니다.

 

위 GET 과 POST 의 설명을 보면 계속 보안에 관한 내용이 나오게 된다.

간단한 예시를 통해, 어째서 보안성의 차이가 있는 지 알아보자.

 

만약 GET 요청으로 서버에 로그인 요청을 하게 된다면,

사용자는 주소창에다가 다음과 같이 치게 될 것이다.

http://somesite.com?username=abcd&password=abcd

이렇게 해도 사실 로그인은 성공하게 된다.

하지만 이렇게 하게 되면 사용자 개인정보가 브라우저의 기록이나 웹 서버 로그에

기록이 남게 되고, 이는 보안성이 굉장히 떨이진다고 볼 수 있다. 

 

그래서 이렇게 민감한 정보가 네트워크 요청시에 들어가게 된다면 POST 를 사용하는 게 맞다.

728x90

'CS' 카테고리의 다른 글

HTTP vs HTTPS  (0) 2023.03.20
TCP vs UDP  (0) 2023.03.18
트랜잭션의 연산 중 ROLLBACK 이란?  (0) 2023.03.16
거품 정렬(Bubble Sort)이란?  (0) 2023.03.15
프록시란(proxy)?  (0) 2023.03.14