[ CS ] GET과 POST의 차이

혜빈·2024년 9월 4일

보충내용

목록 보기
20/38

기본 개념

  • GET과 POST는 HTTP 프로토콜의 주요 요청 메서드
  • GET은 서버로부터 정보를 조회하는 데 사용됨
  • 예를 들면, 웹 페이지 로드, 검색 쿼리 전송 등에 사용됨
  • POST는 서버로 데이터를 제출하는 데 사용됨
  • 예를 들면, 폼 제출, 파일 업로드 등에 사용됨

정리

GET

  • GET 메서드는 주로 데이터를 요청하고 조회하는 데 사용됨
  • URL에 파라미터가 노출되며, 캐싱이 가능함
  • 'http://naver.com/serch?query=keyword'
  • URL 길이에 제한이 있어 대량의 데이터 전송에 적합하지 않음
  • 응답이 캐시될 수 있어 동일한 요청에 대해 빠른 응답 가능
  • 멱등성을 가짐 (같은 요청 여러 번 보내도 서버의 상태가 변하지 않음)
  • 브라우저 히스토리가 남아 뒤로 가기 가능

POST

  • 반면, POST 메서드는 서버로 데이터를 제출하는 데 사용됨
  • 요청 본문(body)에 데이터를 포함시킴
  • POST는 더 많은 데이터를 전송할 수 있고, 보안적으로 더 안전함
  • 일반적으로 캐시되지 않아 매번 서버에 새로운 요청을 보냄
  • 멱등성을 가지지 않음 (같은 요청 여러 번 보내면 서버의 상태가 변할 수 있음)
  • 브라우저 히스토리에 남지 않아 뒤로 가기 시 데이터 재전송 경고가 발생할 수 있음
  • 실제 개발에서는 데이터 조회, 검색 기능에는 GET을 사용
  • 로그인, 회원가입, 게시글 작성 등 서버의 상태를 변경하는 작업에는 POST를 주로 사용함
  • 이를 통해 웹 애플리케이션의 보안성, 성능, 사용자 경험을 최적화할 수 있음

용어 정리

  • 멱등성
    - 동일한 요청을 여러 번 보내도 서버의 상태가 변하지 않는 특성
    - 즉, 같은 요청을 해도 항상 같은 결과를 얻을 수 있음
  • 캐싱
    - 자주 사용되는 데이터를 임시로 저장해두어 빠르게 접근할 수 있게 하는 기술
    - 웹에서는 브라우저나 중간 서버가 응답을 저장해두고 재사용 하는 것을 의미함
  • HTTP 프로토콜
    - Hypertext Transfer Protocol의 약자
    • 웹에서 클라이언트와 서버 간의 통신을 위한 규약
    • 요청과 응답 구조로 이루어져 있음
profile
최강 개발자를 꿈꾸는 병아리

0개의 댓글