1.1 HTTP 리퀘스트 메시지를 작성한다

오다혜·2023년 8월 28일
0

워밍업 문제

  • www(World Wide Web): 웹서버에 붙인 이름, 웹을 설계한 사람이 최초로 만든 브라우저 겸 HTML 편집기
  • 도메인은 개인 자격으로 취득할 수 있다.
  • 네트워크 제어는 브라우저나 애플리케이션이 하는 게 아니라 OS 가 담당한다.

1. 탐험 여행은 URL 입력부터 시작한다.

  • 브라우저: 여러 클라이언트 기능을 하는 소프트웨어
    • 웹 서버에 액세스

    • 파일 다운로드 / 업로드

    • 메일 클라이언트

    • 클라이언트 파일 조회

      → 그렇다고 브라우저가 직접 하는 것은 아니고 해당 프로토콜을 통해 데이터를 주고 받을 수 있도록 도와주는 역할

  • 기능을 선택하기 위해서 URL 맨 앞에 액세스 방법을 나타냄
    • ex) http, ftp, file, mailto, news

2. 브라우저는 먼저 URL 을 해독한다.

  • URL 형식은 프로토콜(액세스 방법)에 따라 다르다.
  • [프로토콜(액세스 방법)] + // + [웹 서버명] + / + [*디렉토리명] + / + … + [*파일명]

3. 파일명을 생략한 경우

  • 파일명을 생략할 수 있다. → 디렉토리 하위의 index.html 등에 접근
  • 디렉토리 명도 생략할 수 있다. → root 하위의 index.html 등에 접근
  • 맨 끝에 / 가 없는 경우 마지막 단어는 파일이 될 수도, 폴더가 될 수도 있다. 웹 서버에 있는 것에 따라 알아서 다르게 취급

4. HTTP 의 기본 개념

  • 클라이언트와 서버가 주고받는 내용과 순서에 대한 규칙
  • HTTP 메소드
    • URI
    • 메소드
    • 헤더
    • 바디

5. HTTP 리퀘스트 메시지를 만든다.

  • 메소드는 브라우저 동작 상태에 따라 달라짐
    • ex) form 데이터 submit 을 하면 POST, url 에 페이지 주소 입력하면 GET
  • 메시지 헤더
    • general header: request/response 모두 사용
    • request header: request 만 사용(ex. User-Agent, Authorization)
    • response header: response 만 사용(ex. Location, Server)
    • entity header: 본문 부가 정보로 사용하는 헤더
      • Allow
      • Content-Encoding
      • Content-Type
  • 리퀘스트 메시지
    • 메소드 + URI + HTTP 버전
  • 응답 메시지
    • HTTP 버전 + 스테이터스 코드 + 응답 문구

6. 리퀘스트 메시지를 보내면 응답이 되돌아온다.

  • response code - 프로그램에 실행 결과 알려줄 때 사용
  • response text - 사람에게 결과를 알려주는 목적
  • URI 한 번에 한 개만 요청할 수 있으므로 본문 내에 이미지, 영상 등이 담겨 있으면 추가로 서버에 요청한다.
  • 본문을 파싱하다가 와 같은 태그를 만나면 리소스를 요청하고, 이후 레이아웃을 정해서 화면에 표시한다.

추가 궁금증 정리 사항

GET, POST 이외에는 보안적으로 취약하다는 이야기가 무슨 말일까?

[웹 취약점] HTTP 메소드 -1

profile
프론트엔드에 백엔드 한 스푼 🥄

0개의 댓글