[Web] HTTP 메시지

suhjaesuk·2022년 11월 12일
0

Web

목록 보기
2/2

🌐 HTTP 요청과 응답 절차

HTTP 요청과 응답 절차는 연결 설정 → 요청 메시지 전송 → 응답 메시지 전송 → 연결 끊기 로 이루어져 있다. 여기서 말하는 요청 메시지와 응답 메시지가 무엇인지 궁금하다.

요청 메시지와 응답 메시지가 어떠한 형식인지 알아보자

🌐 HTTP 요청 메시지

HTTP 요청메시지의 구조는 시작라인, 요청 헤더, 요청 몸체로 이루어져 있다.

  • 시작라인 : 요청 방식, URI, 버전 번호
    • 시작라인 예시
    GET /index.html HTTP/1.1
    
    - GET : 웹 서버에게 요청 대상에 대해 처리 방식을 지정
    - /index.html/ : 서버에 존재하는 파일의 URI
    - HTTP /1.1 : HTTP의 버전
  • 요청 헤더
    • 한라인에 하나씩 헤더 정보를 기술
    • 각 라인은 “헤더필드이름:값” 형식으로 구성됨
    • 요청 헤더의 끝에 공백 라인을 둠
    • 요청 헤더 예시
   HOST: www.w3.org
    Referer: http://www.w3.org/hypertext/DataSources/Overview.html
    Accept: image/gif,image/x-xbitmap,image/jpeg,image/pjpeg...
    Accept-Language: ko
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
    Content-Length: 43
    Content-Type: application/x-www-form-urlencoded
  • 요청 몸체
    • POST 요청 방식에서만 의미 있음
    • HTML 폼에서 작성한 데이터를 POST 방식으로 전송할 때 사용됨

🌐 HTTP 응답 메시지

HTTP 응답메시지의 구조는 시작라인, 응답 헤더, 응답 몸체로 이루어져 있다.

  • 시작라인 : HTTP 버전, 서버의 응답 코드, 설명
    • 서버의 응답 코드 목록
      • 200 OK - 클라이언트 요청이 성공적으로 끝남
      • 400 Bad Request - 잘못된 요청
      • 401 Unauthorized - 인증 오류
      • 403 Forbidden - 사용자 허가 모드 오류
      • 404 Not Found - 요청한 문서가 존재하지 않음
      • 405 Method Not Allowd - 요청한 방식을 지원하지 않음
      • 500 Internal Server Error - 서버에서의 실행 오류
      • 503 Server Unavailable - 일시적으로 요청을 처리할 수 없음
  • 응답 메시지 예시
HTTP/1.1 200 OK                              // 시작라인
Date: Mon, 23 May 2005 22:38:34 GMT          // 응답 헤더
Server: Apache/1.3.3.7 (Unix)(Red-Hat/Linux)
Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
...

<html>                                       // 응답 몸체
<head>
	<title>An Example Page</title>
</head>
<body>
	Hello World
</body>
</html>
profile
wanna be BE-Developer

0개의 댓글