티스토리 뷰

dev_공부일지/HTTP

HTTP

dev_0hoon 2022. 3. 16. 06:24

HTTP

 

 

GET: 리소스 조회 (뭐좀 줘)

POST: 요청 데이터 처리, 주로 등록에 사용 (데이터 줄테니 등록해줘)

PUT: 리소스를 대체, 해당 리소스가 없으면 생성

PATCH: 리소스 부분 변경

DELETE: 리소스 삭제

 

 

GET

GET/search?q=hello&hl=ko HTTP/1.1

Host: www.google.com

 

  • 리소스 조회
  • 서버에 전달하고 싶은 데이터는 query(쿼리 파라미터, 쿼리 스트링)를 통해서 전달

#메세지바디를 전달 할 수 있다. 최근 스펙에서는 가능하지만 실무에서는 겟 메서드에 바디에 데이터를 넣지않는다.

왜냐하면 지원하지 않는 서버가 많기 때문이다.

 

GET /members/100 HTTP/1.1 Host:localhost:8080 --> 요청 /members/100 { "username":"young", "age":20 } //조회 요청메세지를 응답 메세지를 만들어 200 ok를 보내며 전달된다.

 

POST

 

클라이언트에서 서버로 데이터를 전달주며 처리해달라고 하는 것 (등록 등)

-요청 데이터 처리

-신규 리소스 등록, 프로세스 처리 등

 

처리 후 바디에

등록처리된 곳으로

location : /members/100 

이런 식으로 붙여준다.

 

 - 예를 들어

  - HTML 양식에 입력 된 필드와 같은 데이터 블록을 데이터 처리 프로세스에 제공

      -예) HTML FORM에 입력한 정보로 회원 가입, 주문 등에서 사용

 정리 핵심: 이 리소스에 URI에 POST 요청이 오면 요청 데이터를 어떻게 처리할지 리소스마다 따로 정해야 함 -> 정해진 것이 없다

 

 

큰 프로세스를 처리할 때에도 POST를 사용해야함

 

사실 POST는 조회든 뭐든 사용할 수 있지만

조회 데이터는 최대한 GET를 사용해야하며 그 이유는 서버간에 조회는 GET으로 약속 해놓은게 있기 때문 (캐싱 같은 문제가 더 수월하다)

 

 

PUT

완전 덮어버림

-리소스를 대체

  - 리소스가 있으면 대체

  - 리소스가 없으면 생성

  - 쉽게 이야기해서 덮어버림

- 중요! 클라이언트가 리소스를 식별

  - 클라이언트가 리소스 위치를 알고 URI 지정

  - POST와 차이점

 

PATCH

put과 다르게 리소스 부분변경

 

DELETE

리소스 제거

'dev_공부일지 > HTTP' 카테고리의 다른 글

HTTP 메소드  (0) 2022.03.30
DNS  (0) 2021.08.30
PORT  (0) 2021.08.29
IP와 TCP ,UDP  (0) 2021.08.28
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함