http method 정리

송명규·2023년 3월 18일
0

네트워크를 공부하다가, 혹은 머리를 박으면서 공부를 하다보면
GET, PUT, POST 등등.. 에 마주치게 된다.

나도 이런 문제를 겪었었고, 역시나 몰라서 찾아보았다.

그런 당신을 위해서 준비했습니다! http method 정리!

RESTful 한 머시기.. REST 어쩌구.. 그냥 정리 블로그에 보면 나오는 말들이다.
http method를 알기 전에 먼저 REST가 뭔지 알아야한다.
사람들이 인터넷을 할 때,
(1) 정확한 위치에서
(2) 정확한 행동을
(3) 정확한 방법을 통해
하기 위해서 어떤 규격을 정해놓았다. 이게 바로 REST 라고 할 수 있다.

REST : Representational State Transfer 의 약자

  • 자원(Resource): URI (URL 이 아닙니다. 이건 URL과 비슷하다고 생각하고 일단 패쓰!)
  • 행위(Verb): HTTP Method
  • 표현(Representations)

위의 "행위"의 정확성을 만족시키기 위해 HTTP Method를 쓴다!

그럼 방법에는 총 몇가지가 있고, 어떤 방법을 설명하는지, 언제 쓰면 좋을지 알아보도록 합시다.

HTTP 의 종류

  • GET: 서버로 부터 데이터를 취득
  • POST: 서버에 데이터를 추가, 작성 등
  • PUT: 서버의 데이터를 갱신, 작성 등
  • DELETE: 서버의 데이터를 삭제
  • HEAD: 서버 리소스의 헤더(메타 데이터의 취득)
  • PATCH: 리소스의 일부분을 수정
  1. GET

주로 데이터를 읽거나(Read) 검색(Retrieve)할 때에 사용되는 메소드이다.
다르게 말하면 정보를 바꾸지 않고, 읽어오기만 할 때 쓰인다.

성공 시(200) :
만약 응답코드가 200 으로 정상이면, Body에 읽어오고 싶은 정보가 실려서 오게된다.
실패 시(400,404) :
해당 URL이 잘못되거나, 권한이 없을 경우(URL 존재 자체를 숨기고 싶을 때)
400, 404 에러를 돌려준다.

  1. POST

POST 메소드는 주로 새로운 리소스를 생성(create)할 때 사용된다. 조금 더 구체적으로 POST는 부모 리소스의 하위 단계인 자식 리소스를 생성할 때 사용한다.

리소스 생성 성공 시, 201 이 온다.

  1. PUT

리소스가 있으면 대체하고, 없으면 생성한다.
UPDATE 느낌이다.

  1. DELETE

서버의 데이터를 삭제할 때 사용
하지만 안전성의 문제로 대부분의 서버에서 비활성 상태로 운영

  1. HEAD

GET 방식과 동일하지만 응답에 BODY는 없고,
응답코드와 HEAD만 응답.
웹서버 정보확인, 헬스체크, 버전확인, 수정날짜 확인에 쓰인다.

  1. PATCH

PUT방식과 유사하게 UPDATE 할 때 쓰이지만,
일부분만 UPDATE 할 때 쓰인다.
PUT의 경우 자원 전체를 갱신하지만, PATCH는 정해진 일부분만 갱신!

profile
안녕하세요

0개의 댓글