Programming/etc

GET과 POST 방식

esoog Polaris 2023. 6. 2. 14:51
반응형

GET과 POST는 HTTP 프로토콜에서 사용되는 두 가지 주요한 요청 메서드입니다. 이들은 클라이언트(브라우저)가 서버에 요청을 보낼 때 사용되며, 데이터를 전달하는 방식과 목적에 차이가 있습니다.

 

 


1. GET 방식:
- GET은 클라이언트가 서버에게 리소스(웹 페이지, 이미지, 동영상 등)를 요청할 때 사용하는 메서드입니다.
- GET 요청은 URL에 요청 매개변수와 그 값들을 쿼리 스트링(query string)의 형태로 포함하여 전송합니다. 예를 들면 ` http://example.com/page?param1=value1&param2=value2 `와 같은 형식입니다.
- GET 요청은 서버로부터 정보를 요청하거나 조회할 때 주로 사용됩니다.
- GET 요청은 브라우저 히스토리에 남기며, 캐시에 저장될 수 있습니다.
- 데이터 전달 시 URL에 매개변수가 노출되므로 보안에 취약할 수 있습니다.
- GET 요청은 멱등성(idempotent)을 갖습니다. 즉, 동일한 요청을 여러 번 보내도 동일한 결과를 반환해야 합니다.

 

 


2. POST 방식:
- POST는 클라이언트가 서버로 데이터를 전송할 때 사용하는 메서드입니다.
- POST 요청은 HTTP 요청 본문(body)에 데이터를 담아 전송합니다. 이 데이터는 폼(form) 데이터, JSON, XML 등의 형식으로 전송될 수 있습니다.
- POST 요청은 데이터의 생성, 수정, 삭제 등을 목적으로 사용됩니다.
- POST 요청은 브라우저 히스토리에 남기지 않고, 캐시에 저장되지 않습니다.
- 데이터 전달 시 URL에 매개변수가 노출되지 않으므로 GET보다는 보안성이 높습니다.
- POST 요청은 멱등성을 보장하지 않습니다. 동일한 요청을 여러 번 보내면 서버 상태가 변경될 수 있습니다.

 


두 방식은 서로 다른 목적과 특성을 가지고 있으며, 올바른 상황에서 적절하게 사용되어야 합니다. GET은 정보 요청과 조회에, POST는 데이터 전송과 상태 변경에 주로 사용됩니다.

728x90

'Programming > etc' 카테고리의 다른 글

로그(log)  (0) 2023.06.07
세션(Session)  (0) 2023.06.07
웹(WEB)과 앱(APP) 비교  (0) 2023.06.06
보안 설계에 관하여  (0) 2023.06.06
동기와(Synchronous)와 비동기 처리(Asynchronous)  (0) 2023.06.05