🔗GET과 📝POST의 차이점에 대해서 설명해주세요.

     

    😜이건 꼭 언급해주세요

    • GET은 URL 노출 O , POST는 URL 노출 X 
    • 🔗 GET은 가져오는 것
      • Select적 성격 == 조회
      • 왜 🔗인가요? = 인터넷에서 본 물건을 친구에게 보여줄 때(get방식) URL로 보내기 때문이에요.
    • 📝POST는 수행하는 것
      • DML적 성격 == 생성, 수정, 삭제 
      • 왜 📝인가요? = 회원 가입처럼 개인정보가 담긴 내용을 제출(post방식)할 때 사용하는 방식이기 때문이에요.

     

     


     

    🔗GET 방식과 📝POST 방식의 가장 큰 차이점은 바로 url에 사용자가 입력한 값이 노출이 되는지, 그렇지 않은지입니다.

     

    🔗GET 방식의 경우 서버에서 어떤 데이터를 가져와서 보여주는 용도로 사용되며, 서버의 값이나 상태를 바꾸지 않습니다.

    게시판의 리스트라던지 글 보기 기능 같은 것이 해당됩니다. ( 조회수를 올려주는 것은 예외로 하겠습니다)

     

    반면, 📝POST방식서버의 값이나 상태를 바꾸기 위해서 사용합니다. 글쓰기를 하면 글의 내용이 DB에 저장되고, 수정을 하면 DB값이 수정될 때에 POST 방식을 사용합니다.

     

    쉽게 말하자면, 어떤 페이지를 보고 있을 때, 다른 사람에게 주소를 보내주기 위해서 URL을 복사해 줄 수 있어야 합니다.

    POST를 할 경우에는 값이 내부적으로 전달되기 때문에 ( 요청이 Requset body에 담기기 때문에 ) URL만 전달할 수 없습니다.

    (== 앞에서 url에 사용자가 입력한 정보들이 노출된다고 했는데, 사용자가 입력한 비밀번호, 주소 등 개인정보 등이 url에 그대로 노출되면 안 되잖아요. 그래서 값을 내부적으로 전달(= Request Body에 담아서 보냄) 하기 때문에 url만 전달할 수 없는 거랍니다.)

     

    다른 사용자에게 보여준다 == URL로 링크를 보내야한다 == GET 방식 
    글을 작성,수정,삭제한다 == URL로 링크를 보낼 필요가 없다 == POST 방식


     

    http://url/bbslist.html?id=5&pagenum=2 같이 하는 것이 쿼리 스트링을 이용해서 정보를 가져오는 방식이  GET방식이고

    form안에 사용자가 입력한 값들을 담아서  submit을 하는 형태POST라고 정리할 수 있습니다

     


    정리하자면!

    • 🔗get 방식 : 요청 시 사용자가 입력한 값들이 url에 노출되는 방식
      • 이름 그대로 어떠한 데이터를 서버로부터 받아(GET) 올 때 주로 사용하는 Method입니다.
      • 데이터 생성/수정/삭제 없이 받아오기만 할 때 사용됩니다.
      • 가장 간단하고 많이 사용되는 HTTP Method
      • 언급한 대로 주로 데이터를 받아올 때 사용되기 때문에 request에 body를 안 보내는 경우가 많다.
    • 📝post 방식 : 요청 시 사용자가 입력한 값들이 url에 노출되지 않는 방식(회원가입, 로그인)
      • 데이터를 생성/수정/삭제할 때 주로 사용되는 Method입니다.
      • 데이터를 생성 및 수정할 때 많이 사용하기 때문에 대부분의 경우 requst body가 포함돼서 보내진다.

     

     

     

    꼬리질문

     

     

    👨‍🏫 추가

    7/21

     

    REST API를 공부하면서 추가합니다.

    물론, POST만으로 생성/수정/삭제가 가능은 하지만, RESTful한 API를 만들기 위해서는 이를 구분해서 사용해야합니다.

     

    먼저 DELETE는 사용자의 정보를 삭제할 때,

    PUT은 사용자의 정보 전체를 변경할 때,

    PATH는 사용자의 정보 중 일부만을 변경할 때 사용됩니다.

     

     

     


    참고한 포스팅

     

    GET과 POST의 차이 :: Outsider's Dev Story

    다들 아시다시피 GET과 POST는 HTTP프로토콜을 이용해서 서버에 무언가를 전달할 때 사용하는 방식입니다. 웹개발자라면 당연히 알고 있어야 하는 사항이고 이걸 모르면 웹개발자체를 할 수가 없

    blog.outsider.ne.kr

     

    HTTP 구조 및 핵심 요소

    💪 HTTP 를 공부한 후에 대답할 수 있어야 하는 질문들 > HTTP란? Request? Response? headers와 body의 역할? Method란? Status-code 들은 무엇이 있을까요? RESTful HTTP API는 무엇일까요? 올바른 end-p

    velog.io

     

     

    멱등(Idempotent)이란?

    HTTP 메서드의 속성, 멱등(Idempotent)이란?

    irostub.github.io

     

     

    728x90

    댓글