본문 바로가기
반응형

HTTP (HyperText Transfer Protocol)란?

Http란 웹에서 클라이언트와 서버 간의 데이터 전송을 위한 프로토콜, 즉 규약이다. http의 약자를 분석해보면 더 자세히 알 수 있는데, 해석해보자면 아래와 같다. 

HyperText : 단순한 텍스트를 넘어서 링크(참조)를 통해 다른 문서나 웹 페이지로 이동할 수 있는 동적인 텍스트를 의미한다.
Transfer: 데이터를 전송한다는 의미로, HTTP는 클라이언트와 서버 간의 데이터 전송을 말한다.
Protocol:  컴퓨터 간의 통신 규약을 말한다.

HTTP의 구조

그렇다면 http를 예시를 통해 어떤 구조를 가지고 있는지 자세히 알아보자. 

 

http Request

  • Method: 클라이언트가 서버에 수행하고자 하는 작업의 종류를 말한다.
  • Path : 요청 대상 리소스의 경로를 뜻한다.
  • HTTP Version: 요청에서 사용되는 HTTP 프로토콜의 버전으로, 최신 버전일수록 더 효율적이다.
  • Host : 요청을 보낼 서버의 도메인 이름을 지정한다.
  • User-Agent: 요청을 보내는 클라이언트(브라우저나 앱)의 환경 정보를 제공한다.
  • Content-Type: 요청 본문(body)의 데이터 형식을 나타내며, 예시에서는 json을 나타내고 있다.
  • Accept : 클라이언트가 서버로부터 기대하는 응답 데이터 형식을 말한다
  • Authorization: 요청을 인증하기 위한 정보로, 액세스 토큰이나 자격 증명을 포함한다
  • Request Body: 요청에서 서버로 전송하는 실제 데이터를 말한다.

Method의 종류

 

  • GET: 서버에서 데이터를 조회할 때 사용
  • POST: 서버에 데이터를 생성하거나 전송할 때 사용
  • PUT: 서버에서 리소스 전체를 업데이트하거나 생성할 때 사용
  • PATCH: 서버에서 리소스의 일부를 수정할 때 사용
  • DELETE: 서버에서 리소스를 삭제할 때 사용
  • OPTIONS: 서버에서 지원하는 HTTP 메서드를 조회할 때 사용
  • HEAD: GET 요청과 동일하지만, 응답 본문 없이 헤더만 반환할 때 사용

 

반응형

'코딩 > Web' 카테고리의 다른 글

CommonJS와 ESModule  (3) 2024.10.05