정의

 

Hyper Text Transfer Protocol의 약자로 인터넷에서 데이터를 주고 받을 수 있는 프로토콜(규칙)입니다.

 

동작 

 

클라이언트 즉, 사용자가 브라우저를 통해서 어떠한 서비스를 url을 통하거나 다른 것을 통해서 요청(request)을 하면 서버에서는 해당 요청사항에 맞는 결과를 찾아서 사용자에게 응답(response)하는 형태로 동작한다.

 

  • HTTP 메시지는 HTTP 서버와 HTTP 클라이언트에 의해서 해석이 됩니다.
  • TCP/IP를 이용하는 응용 프로토콜(application protocol)입니다.
  • HTTP는 연결 상태를 유지하지 않는 비연결성 프로토콜입니다. (이러한 단점을 해결하기 위해 Cookie와 Seesion 등장)
  • HTTP는 연결을 유지하지 않는 프로토콜이기 떄문에 요청/응답(request/response) 방식으로 동작합니다.

-서버 : 어떠한 자료에 대한 접근을 관리하는 네트워크 상의 시스템 (요청에 대한 응답을 보내준다.)

-클라이언트 : 그 자료에 접근할 수 있는 프로그램
Ex) 웹 브라우저, 핸드폰 어플리케이션 등...

 

  • 요청 : client -> server
  • 응답 : server -> client

 

Request (요청)

 

클라이언트가 서버에게 연락하는 것을 요청이라고 하며 요청을 보낼때는 요청에 대한 정보를 담아 서버로 보낸다.

 

Request Method (요청의 종류)

 

GET : 자료를 요청할 때 사용
POST : 자료의 생성을 요청할 때 사용
PUT : 자료의 수정을 요청할 때 사용
DELETE : 자료의 삭제를 요청할 때 사용

 

Response (응답)

서버가 요청에 대한 답변을 클라이언트에게 보내는 것을 응답이라고 한다.

 

Status Code (상태 코드)

 

상태 코드에는 굉장히 많은 종류가 있다. 모두 숫자 세 자리로 이루어져 있으며, 아래와 같이 크게 다섯 부류로 나눌 수 있다.

-1XX (조건부 응답) : 요청을 받았으며 작업을 계속한다.
-2XX (성공) : 클라이언트가 요청한 동작을 수신하여 이해했고 승낙했으며 성공적으로 처리했음을 가리킨다.
-3XX (리다이렉션 완료) : 클라이언트는 요청을 마치기 위해 추가 동작을 취해야 한다.
-4XX (요청 오류) : 클라이언트에 오류가 있음을 나타낸다.
-5XX (서버 오류) : 서버가 유효한 요청을 명백하게 수행하지 못했음을 나타낸다.


참조

 

https://www.zerocho.com/category/HTTP/post/5b344f3af94472001b17f2da

 

https://medium.com/@lunay0ung/protocol-http%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C-84a896c5fc93

 

https://velog.io/@surim014/HTTP%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80

 

https://velog.io/@sejong202/HTTP%EB%8A%94-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C%EC%9A%94

 

+ Recent posts