티스토리 뷰

HTTP (HyperText Transfer Protocol)

  • W3 상에서 서버/클라이언트가 정보를 공유하기 위해 사용하는 프로토콜
  • 애플리케이션 레벨의 프로토콜로 TCP/IP 위에서 동작
  • 상태를 가지고 있지 않는 Stateless 프로토콜이며 클라이언트가 서버에 요청을하는 단방향 통신
  • Method, Path, Version, Headers, Body 등으로 구성

HTTP Request

클라이언트가 서버에게 특정 Method를 사용하여 요청하는 것으로 Headers(Start Line 포함), Body로 구성

  • Start Line
    • HTTP Method / Request target / HTTP version
    • HTTP Method - 요청의 목적
      • GET: 리소스 요청
      • POST: 내용 전송
      • PUT: 내용 갱신
      • DELETE: 리소스 제거
    • Request target(URI) - 리소스 경로(ex.http://www.example/com/login)
    • HTTP version - HTTP1.1 또는 HTTP/2
  • Headers
    • Accept - 클라이언트가 허용할수 있는 데이터,파일 형식
    • User Agent - 클라이언트의 OS, 브라우저 정보
    • Host - 서버의 도메인 네임
  • Body
    • 클라이언트가 서버에 보내는 데이터

HTTP Response

클라이언트의 요청에 따른 서버의 응답으로 Headers, Body로 구성

  • Headers
    • Version: HTTP 버전
    • Status: 상태
    • Status Message: 상태 메시지
    • Date, Content-location, etag: 캐시 정보 업데이트
    • Last-modified: 요청한 데이터의 최종 수정일
    • Content-length: 요청한 데이터 길이
  • Status Code
    • 2** Success - 200 OK
    • 3** Redirection - 307 Temporary Redirect
    • 4** Client Error
      • 400 Bad Request: 서버가 클라이언트 오류(잘못된 요청 구문, 유효하지 않은 요청 메시지 등)으로 요청을 처리할수 없음
      • 401 Unauthorized: 대상 리소스에 대한 유효한 인증 자격 증명이 없어 요청이 적용되지 않음
      • 404 Not Found: 요청받은 리소스를 찾을수 없음
    • 5** Server Error
      • 500 Internal Server Error: 서버에 오류가 발생하여 요청을 수행할수 없음
      • 502 Bad Gateway: 서버가 게이트웨이나 프록시 역할을 하고 있거나 업스트림 서버에서 잘못된 응답을 받음
      • 503 Service Unavailable: 서버가 오버로드 되었거나 유지관리를 위해 다운되었기 때문에 서버를 사용할수 없음

'컴퓨터공학 > 네트워크' 카테고리의 다른 글

[네트워크] Websocket(웹소켓)이란?  (0) 2021.06.08
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함