본문 바로가기

TIL/모든 개발자를 위한 HTTP 웹 기본 지식8

8.HTTP 헤더2 - 캐시와 조건부 요청 인프런의 모든개발자를 위한 HTTP 웹 기본 지식 강의를 들은 내용을 정리하는 포스트입니다. 캐시 기본 동작 캐시란 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시에 데이터를 미리 복사해 놓으면 계산이나 접근 시간 없이 더 빠른 속도로 데이터에 접근할 수있기 때문이다. (위키피디아 정의) HTTP 통신에서도 캐시를 사용한다. 캐시가 없을때는 • 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. • 인터넷 네트워크는 매우 느리고 비싸다. • 브라우저 로딩 속도가 느리다. • 느린 사용자 경험 캐시를 적용하면 • 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. • 비싼 네트워크 사용량을 줄일 수 있다. • 브라우저 로딩 속도가 매우.. 2021. 6. 27.
7.HTTP 헤더1 - 일반 헤더 인프런의 모든개발자를 위한 HTTP 웹 기본 지식 강의를 들은 내용을 정리하는 포스트입니다. HTTP 헤더 개요 HTTP 헤더의 용도 • HTTP 전송에 필요한 모든 부가정보 - 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐 시 관리 정보... • 표준 헤더가 너무 많음 - https://en.wikipedia.org/wiki/List_of_HTTP_header_fields • 필요시 임의의 헤더 추가 가능 - helloworld: hihi 표현헤더의 종류 협상(콘텐츠 네고시에이션)헤더 클라이언트가 선호하는 표현을 요청하는데 사용되는 헤더이며 아래와 같이 4가지 종류가 존재한다. 예를들어 협상헤더를 쓰지않으면 다중언어를 지원하는 서버가 있어도 기본 언어만.. 2021. 6. 27.
6.HTTP 상태코드 인프런의 모든개발자를 위한 HTTP 웹 기본 지식 강의를 들은 내용을 정리하는 포스트입니다. 상태 코드 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능이다. • 1xx (Informational): 요청이 수신되어 처리중 (실무에서 아예 안씀) • 2xx (Successful): 요청 정상 처리 • 3xx (Redirection): 요청을 완료하려면 추가 행동이 필요 • 4xx (Client Error): 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없음 • 5xx (Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못함 만약 모르는 상태코드가 나오면? => 클라이언트는 상위 상태코드로 해석해서 처리한다. ex) • 299 ??? -> 2xx (Success.. 2021. 6. 23.
5. HTTP 메서드 활용 인프런의 모든개발자를 위한 HTTP 웹 기본 지식 강의를 들은 내용을 정리하는 포스트입니다. 클라이언트에서 서버로 데이터 전송 클라이언트에서 서버로 데이터 데이터 전달 방식은 크게 2가지 • 쿼리 파라미터를 통한 데이터 전송 - GET - 주로 정렬 필터(검색어) • 메시지 바디를 통한 데이터 전송 - POST, PUT, PATCH - 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 클라이언트에서 서버로 데이터를 전송하는 4가지 상황을 살펴보자. HTTP API 설계 • HTTP API - 컬렉션 - POST 기반 등록 - 서버가 리소스 URI 결정 • HTTP API - 스토어 - PUT 기반 등록 - 클라이언트가 리소스 URI 결정 • HTML FORM 사용 - 순수 HTML + HTML form.. 2021. 6. 23.
4. HTTP 메서드 인프런의 모든개발자를 위한 HTTP 웹 기본 지식 강의를 들은 내용을 정리하는 포스트입니다. HTTP API를 만들어보자 아래의 기능을 지원하는 회원 정보 관리 API URI를 만드는 상황을 생각해보자 • 회원 목록 조회 => /read-member-list • 회원 조회 => /read-member-by-id • 회원 등록 => /create-member • 회원 수정 => /update-member • 회원 삭제 => /delete-membe 이렇게 동사를 활용해서 URI를 만드는 것이 맞는걸까??? URI = Uniform Resource Identifier 이다. 이때 Resource는 회원 그 자체를 의미하는거지 등록, 조회 수정 등의 행위는 해당하지 않는다. 따라서 회원이라는 단어에 집중하여 .. 2021. 6. 22.
3. HTTP 기본 인프런의 모든개발자를 위한 HTTP 웹 기본 지식 강의를 들은 내용을 정리하는 포스트입니다. 모든 것이 HTTP HTTP 는 원래 Hyper link 가 담긴 문서를 주고받는 프로토콜이었음. => 현재는 모든것을 담아서 전송하는 프로토콜로 발전함. HTTP는 발전하여 현재 HTTP3 까지 발전했으나 여전히 가장 많이 사용하는 버전은 HTTP/1.1 버전임. HTTP 특징 • 클라이언트 서버 구조 • 무상태 프로토콜(스테이스리스), 비연결성 • HTTP 메시지 • 단순함, 확장 가능 클라이언트 서버 구조 - 요청과 응답으로 이루어진 구조(Request, Response) - 클라이언트는 서버에 요청을 보내고, 응답을 대기 - 서버가 요청에 대한 결과를 만들어서 응답 왜 서버와 클라이언트로 나누는게 중요한가.. 2021. 6. 21.