http

taeheech·2020년 7월 11일
0

http (HyperText Transfer Protocol)

  • 하이퍼텍스트(HTML) 문서를 교환하기 위해 만들어진 protocol(통신 규약)
    즉, 웹상에서 네트워크로 서버끼리 통신을 할때 어떠한 형식으로 서로 통신을 하자고 규정해 놓은 "통신 형식" 혹은 "통신 구조".
    다시말하면, 물리적으로 떨어진 컴퓨터끼리 어떻게 하이퍼텍스트(HTML) 문서를 주고 받을지에 대한 약속.

  • HTTP는 TCP/IP 기반으로 되어있다.

1. HTTP 핵심 요소

(1) HTTP 통신 방식

  • 요청/응답 (request/response)

  • Stateless
    각각 http통신은 독립적이다. 따라서 이전의 통신을 기억하지 않는다.
    http통신(요청/응답)이 이루어 질때마다 상태를 저장하지 않는다는 것이다.
    때문에 브라우저의 쿠키, 세션, 로컬스토리지 같은 기술이 필요하다.

(2) HTTP Request 구조

  • start line (HTTP Method, Request target, HTTP Version)
  • headers
  • body

(3) HTTP Response 구조

  • start line (HTTP 버젼, Status code, Status text)
  • headers
  • body

2. HTTP Methods

  • get (데이터 생성/수정/삭제 없이 받아오기만 할때 사용)
  • post (데이터를 생성/수정/삭제)
  • options (요청 URI에서 사용할 수 있는 Method를 받아올때 사용)
  • put (데이터를 생성)
  • delete

3. HTTP Status Code

  • 200 OK (문제없이 다 잘 실행)
  • 301 moved permanently (해당 URI가 다른 주소로 바뀌었을 때)
  • 400 Bad Request (해당 요청이 잘못된 요청일 때)
  • 401 Unauthorized (유저가 해당 요청을 진행 하려면 먼저 로그인을 하거나 회원 가입을 하거나 등등이 필요하다)
  • 403 Forbidden (유저가 해당 요청에 대한 권한이 없다는 뜻)
  • 404 Not Found (요청된 uri가 존재 하지 않는다는 뜻)
  • 500 Internal Server Error (서버에서 에러가 났을 때)

0개의 댓글