본문 바로가기

기술면접

17_GET, POST의 개념과 함께 데이터 흐름에 대해서 설명해주세요.

GET과 POST는 HTTP 프로토콜에서 사용되는 두 가지 주요한 요청 방식입니다. 이 두 방식은 웹 서버로부터 정보를 요청하는데 사용됩니다.


✅ GET 방식:
GET 방식은 정보를 요청하기 위해 사용됩니다. 일반적으로 URL을 통해 데이터를 전달합니다. 예를 들어, 웹 브라우저에서 웹 페이지를 요청하거나 쿼리 문자열을 통해 데이터를 전달하는 경우 GET 방식을 사용합니다.

GET 요청은 주로 캐시될 수 있습니다. 이는 동일한 요청이 여러 번 발생할 때 같은 응답을 재사용할 수 있음을 의미합니다.

URL에 데이터가 노출되므로 보안적으로 민감한 정보는 GET 요청에 포함되지 않아야 합니다.

  POST 방식:
POST 방식은 서버로 데이터를 제출하기 위해 사용됩니다. 주로 HTML의 <form> 요소에서 사용되며, 사용자가 입력한 정보를 서버로 보내는 데에 이용됩니다.

POST 요청은 데이터를 HTTP 요청 본문에 담아 서버로 보냅니다. 이로 인해 GET 요청보다는 보안적으로 더 안전합니다. 또한, 데이터 크기에 제한이 없어서 GET 방식보다 더 많은 양의 데이터를 보낼 수 있습니다.

POST 요청은 일반적으로 캐시되지 않습니다.

  GET 방식의 데이터 흐름:
사용자는 웹 브라우저에서 URL을 입력하거나 하이퍼링크를 클릭하여 GET 요청을 보냅니다.
요청은 서버로 전송되고, 서버는 요청된 리소스를 찾아서 응답으로 클라이언트에게 보냅니다.
클라이언트는 응답을 받아 웹 페이지를 표시합니다.

  POST 방식의 데이터 흐름:
사용자가 웹 페이지의 <form>을 작성하고 데이터를 입력한 후 제출하면 POST 요청이 생성됩니다.
입력된 데이터는 HTTP 요청 본문에 포함되어 서버로 전송됩니다.
서버는 데이터를 처리하고 적절한 응답을 생성하여 클라이언트에게 반환합니다.
요약하자면, GET 방식은 정보를 요청하는 데 사용되며, 주로 URL을 통해 데이터를 전달합니다. 반면에 POST 방식은 서버로 데이터를 제출하는 데 사용되며, 데이터는 요청 본문에 담겨 전송됩니다.