ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Web - GET & POST
    Web/Web 2021. 12. 15. 16:25

    GET

    GET이란?

    ㆍ GET 방식은 클라이언트에서 서버로부터 어떠한 정보를 요청하기 위해 사용이 되는 방식이다.

    ㆍ 정보 요청에 필요한 데이터를 URL 주소 끝에 파라미터로 포함되어 전송이 되며, 이 부분을 쿼리 스트링(Query String)이라고 부른다.

     

    GET 방식의 예 : www.example.com/show?name01=value01&name02=value02

     

    ㆍ 서버에서는 name01과 name02라는 파라미터 명으로 각각 value01과 value02의 값을 전달받을 수 있다.

     

    GET의 특징

    ㆍ GET 요청은 불필요한 요청을 제한하기 위해 요청이 캐시 될 수 있다.

    ㆍ 파리미터에 내용이 노출되기 때문에 민감한 데이터를 다룰 때는 GET 요청을 사용해서는 안된다.

    ㆍ GET 요청은 브라우저 기록의 남는다.

    ㆍ GET 요청은 북마크에 추가할 수 있다.

    ㆍ GET 요청은 길이 제한이 있다. (길이 제한에 대한 표준이 따로 있는 것이 아닌, 브라우저마다 제한이 다르다.)


    POST

    POST란?

    ㆍ POST 방식은 클라이언트에서 서버로 정보를 생성하거나 변경할 때 사용이 되는 방식이다.

    ㆍ GET 방식과는 달리 전송해야 할 데이터를 HTTP 메시지 body 부분에 담아서 보낸다.

    ㆍ POST로 데이터를 전송 시 길이 제한이 따로 없기 때문에, 용량이 큰 데이터를 보낼 때 주로 사용된다.

    ㆍ POST를 통한 데이터 전송은 HTML Form을 통해 서버로 전송된다.

     

    POST의 특징

    ㆍ POST 요청은 캐시 되지 않는다.

    ㆍ POST 요청은 브라우저 기록에 남지 않는다.

    ㆍ POST 요청은 북마크에 추가할 수 없다.

    ㆍ POST 요청은 데이터 길이에 제한이 없다.


    GET과 POST의 차이점

    사용목적

    ㆍ GET은 서버의 리소스에서 데이터를 요청할 때 사용이 된다.

    반면, POST는 서버의 리소스를 새로 생성하거나 업데이트할 때 사용이 된다.

     

    요청 시 body 유무

    ㆍ GET은 URL에 요청하는 데이터를 담아 보내기 때문에 HTTP 메시지에 body가 없다.

    ㆍ 반면에, POST는 body에 데이터를 담아 보내기 때문에 당연히 HTTP 메시지에 body가 존재한다.

     

    멱등성

    ㆍ GET 요청은 멱등인 반면에, POST 요청은 멱등이 아니다.

    멱등이란?

    멱등의 사전적 정의는 연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질을 의미한다.

    GET은 리소스를 조회한다는 점에서 여러 번 요청하더라도 응답이 똑같을 것이다. 반대로 POST는 리소스를 새로 생성하거나 업데이트할 때 사용이 되기 때문에 멱등이 아니라고 할 수 있다.

     

    728x90

    'Web > Web' 카테고리의 다른 글

    Web - MVC 패턴  (0) 2022.01.31
    Web - REST API  (0) 2022.01.30
    Web - Native App & Web App & Hybrid App  (0) 2021.10.21
    Web - OAuth란?  (0) 2021.10.20
    Web - Web Server & WAS  (0) 2021.10.20

    댓글

Designed by Tistory.