본문 바로가기
FE/WEB

HTTP(HyperText Transfer Protocol) 통신

by kKkKkKWJ 2024. 6. 1.

*작성자는 공부 중인 학생으로 잘못 된 정보가 있을 수 있음을 알려드립니다.

 

이전에 웹 애플리케이션의 구조에 대해 다루었다.

이 때, HTTP를 이용하여 통신을 한다는 말을 하였는데 이번 게시물에서 HTTP에 대해서 더 자세하게 다루어보고자 한다.

 

HTTP란?

웹에서 데이터를 교환하는 데 사용되는 프로토콜이다. 클라이언트가 서버에 요청을 보내고 서버가 응답을 반환할 때 모두 HTTP를 사용한다.

💡 프로토콜 : 통신을 하기 위한 규약.

 

HTTP 통신의 특징

HTTP의 가장 큰 특징은 무연결성(Connectionless)무상태성(Stateless)이 있다.

 

무연결성(Connectionless)

클라이언트와 서버 간의 연결이 요청과 응답을 주고받은 후 바로 끊어진다는 것이다.

이로 인해서 서버 리소스의 효율적으로 사용할 수 있다. 하지만, 연속된 요청 간의 정보를 유지하기 어렵다.

 

무상태성(Stateless)

이전 요청의 상태를 기억하지 않고 각 요청을 독립적으로 처리한다.

서버는 클라이언트의 상태 정보를 저장하지 않아 서버의 복잡성이 줄어들고 확장성이 증가한다.

그러나, 상태 정보가 필요한 경우가 있다. 이 때 사용하는 것이 쿠키와 세션이다.

💡 쿠키(Cookies) : 사용자의 상태 정보가 사용자의 브라우저에 저장된다. 작은 데이터를 저장하기에 적합하고, 사용자의 기기에 직접 저장되기 때문에 보안상의 주의가 필요하다.

💡 세션(Sessions) : 상태 정보가 서버 측에 저장된다. 쿠키에 비해 안전하게 정보를  관리한다. 그러나 서버의 성능과 확장성에 영향을 줄 수 있다.

 

요청 정보 / 응답 정보

HTTP통신에서 요청할 때는 요청정보를 포함하고 있고, HTTP통신에서 응답할 때는 응답 정보를 포함하고 있다.

 

요청정보(Request Information)

요청 정보를 이용하여 클라이언트는 원하는 작업을 서버에 지시하고 필요한 데이터를 전달한다.

요청 정보에는 다음과 같은 정보가 포함되어 있다.

URL : 요청하는 자원의 주소

메소드 : 요청의 유형을 나타낸다. (GET, POST, PUT, DELETE 등)

헤더 : 요청에 대한 메타데이터를 포함한다.

본문 :  POST, PUT 요청에서 서버로 보내는 데이터가 포함된다.

 

응답정보(Response Information)

서버가 클라이언트의 요청에 대해 보내는 응답이다.

응답 정보에는 다음과 같은 정보를 포함하고 있다.

헤더 : 응답에 대한 메타데이터를 포함한다.

본문 :  요청된 자원 또는 처리 결과 데이터가 포함된다.

상태 코드 : 요청의 결과를 나타낸다. 

     💡 응답 상태 코드

          200 (OK) : 요청이 성공적으로 처리되었다.

          400 (Bad Request) : 요청을 이해할 수 없다.

          404 (Not Found) : 요청을 서버에서 찾을 수 없다.

          500 (Internal Eroor) : 서버 내부에 문제가 있다.

 

요청 정보와 응답 정보를 확인하는 방법

개발자 도구를 이용해서 웹사이트의 요청정보와 응답정보를 확인할 수 있다.

 

1. 검사하고 싶은 웹페이지를 열고, 개발자 도구를 열기 위해 F12를 누른다.

2. Network 탭을 누르고, 페이지를 새로 고침(F5)한다.

3. 아래의 사진 처럼 페이지 로드에 필요한 모든 요청이 목록으로 나타난다.

4. 검사하고 싶은 요청을 선택하고, 아래 위치에서 확인한다.

'FE > WEB' 카테고리의 다른 글

인터넷 주소 체계 (IP / DNS)  (0) 2024.06.01
웹 애플리케이션(Web Application)의 구조  (1) 2024.06.01
풀스택 테크 로드맵  (0) 2024.06.01