본문 바로가기
자유게시판/스터디

[WEB] HTTP 메소드

by 상똥 2024. 1. 2.

1. HTTP 메소드란?

- 클라이언트와 서버 사이에 이루어지는 요청과 응답 데이터를 전송하는 방식

- 서버에 주어진 리소스에 수행하길 원하는 행동

- 서버가 수행해야할 동작

 

* 복습!! Response Request 메시지 구조

Request line(start line) : HTTP 메소드 + URI + HTTP 버전

 

2. HTTP 메소드의 종류

=> GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, CONNECT, TRACE

 

1) GET

- 리소스를 조회하는 메소드

- POST메소드로 조회할 수 있으나, GET은 캐싱이 가능하다는 장점이 있다

(*캐시 : 어떤 특징이 있는 데이터 하위 집합을 저장하는 고속 데이터 스토리지 계층, 이를 사용하면 해당 데이터에 대한 요청이 있을 경우 데이터의 기본 스토리지 위치에 액세스할 때보다 더 빠르게 요청을 처리할 수 있음)

- 서버에 전달하고 싶은 데이터는 쿼리 파라미터 또는 쿼리 스트링에 담아 전달

- 정적 데이터 조회 과정 (쿼리 파라미터 없이 조회 가능)

    (1) 클라이언트에서 /members/100 으로 100번 멤버를 조회할 것을 요청함

    (2) 서버에서 요청 메세지를 분석해 결과 Response를 만들고 응답

더보기

- 1xx : 정보만 담긴 메세지

- 2xx : 요청에 대한 응답이 정상적으로 이루어짐 

- 3xx : 클라이언트를 다른 URL로 리다이렉트

- 4xx : 클라이언트측 에러 발생

- 5xx : 서버측 에러 발생

- 동적 데이터 조회 과정

    - 쿼리 파라미터가 필요함 (member?key1=value1&key2=value2...)

    (1) 요청 URL뒤에 쿼리파라미터를 입력하여 상세한 데이터를 요청한다

    (2) 쿼리 파라미터를 기반으로 정렬하고 걸러내어 결과를 동적으로 생성한다

 

2) POST

- 전달한 데이터 처리/생성 요청 메서드

- 메시지 본문(body)를 통해 서버로 데이터를 요청

- 서버는 요청받은 데이터를 업데이트

- 전달받은 새로운 리소스를 등록하는 메서드

- Json 데이터 전송 과정

    (1) 클라이언트는 body에 등록할 회원정보를 JSON형태로 담아 서버로 전달

    (2) 서버에서는 받은 메세지를 분석해 로직대로 처리

    (3) 신규회원에 대한 데이터를 본문에 담아서 응답

 

3) PUT

- 서버에 리소스를 업데이트하거나 생성하기 위해 사용됨

- 데이터를 HTTP 메세지 본문을 통해 서버로 데이터를 전송

- 만약 리소스가 없으면 새로 생성하고

- 리소스가 있다면 업데이트함

- 일부만 업데이트가 필요한 경우, PATCH가 더 적절할 수 있음

 

4) PATCH

- 서버 리소스의 필요한 부분만 업데이트 (부분적인 업데이트)


5) DELETE

- 서버에서 특정 리소스를 삭제하기 위해 사용됨

- 요청한 URI의 리소스를 삭제

 

6) OPTIONS

- 주어진 URL 또는 서버에 대해 허용된 통신 옵션을 요청

- URL을 직접 지정하거나, *을 사용해 전체 서버를 참조할 수 있음

 

7) TRACE

- 요청 리소스가 수신되는 경로를 보여줌.

- 자기 앞으로 요청 메세지를 반환(루프백) 시험

 

'자유게시판 > 스터디' 카테고리의 다른 글

캡슐, 상속  (1) 2024.01.09
[WEB] Restful API  (2) 2024.01.08
[Web] 구글을 주소창에 검색했을 때 화면이 나오기까지의 과정  (0) 2024.01.01
[WEB] HTTP란?  (0) 2024.01.01
스터디 7주차  (0) 2023.03.26