HTTP12 [http] 11. 헤더 - 3 캐시 적용 • 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. • 비싼 네트워크 사용량을 줄일 수 있다. • 브라우저 로딩 속도가 매우 빠르다. • 빠른 사용자 경험 캐시가 없을 때 • 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. • 인터넷 네트워크는 매우 느리고 비싸다. • 브라우저 로딩 속도가 느리다. • 느린 사용자 경험 캐시 시간 초과 • 캐시 유효 시간이 초과하면, 서버를 통해 데이터를 다시 조회하고, 캐시를 갱신한다. • 이때 다시 네트워크 다운로드가 발생한다. • 캐시 유효 시간이 초과해서 서버에 다시 요청하면 다음 두 가지 상황이 나타난다. 1. 서버에서 기존 데이터를 변경함 2. 서버에서 기존 데이터를 변경하지 않음 • 생각해보면 데이.. 2022. 11. 14. [http] 10. 헤더 - 2 1. 전송 방식 • Transfer-Encoding • Range, Content-Range 전송 방식 설명 • 단순 전송 • 압축 전송 • 분할 전송 • 범위 전송 2. 일반 정보 • From: 유저 에이전트의 이메일 정보 • Referer: 이전 웹 페이지 주소 • User-Agent: 유저 에이전트 애플리케이션 정보 • Server: 요청을 처리하는 오리진 서버의 소프트웨어 정보 • Date: 메시지가 생성된 날짜 2-1. From : 유저 에이전트의 이메일 정보 • 일반적으로 잘 사용되지 않음 • 검색 엔진 같은 곳에서, 주로 사용 • 요청에서 사용 2-2. Referer : 이전 웹 페이지 주소 • 현재 요청된 페이지의 이전 웹 페이지 주소 • A -> B로 이동하는 경우 B를 요청할 때 Ref.. 2022. 11. 12. [http] 9. 헤더 - 1 HTTP 헤더 1. 용도 • HTTP 전송에 필요한 모든 부가정보 • 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐 시 관리 정보... • 표준 헤더가 너무 많음 : https://en.wikipedia.org/wiki/List_of_HTTP_header_fields • 필요시 임의의 헤더 추가 가능 2. 분류 • General 헤더: 메시지 전체에 적용되는 정보 예) Connection: close • Request 헤더: 요청 정보 예) User-Agent: Mozilla/5.0 (Macintosh; ..) • Response 헤더: 응답 정보 예) Server: Apache • Entity 헤더: 엔티티 바디 정보 예) Content-Type: te.. 2022. 11. 12. [http] 9. 상태 코드 상태 코드 : 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 • 1xx (Informational): 요청이 수신되어 처리중 • 2xx (Successful): 요청 정상 처리 • 3xx (Redirection): 요청을 완료하려면 추가 행동이 필요 • 4xx (Client Error): 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없음 • 5xx (Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못함 만약 모르는 상태 코드가 나타나면? • 클라이언트가 인식할 수 없는 상태코드를 서버가 반환하면? • 클라이언트는 상위 상태코드로 해석해서 처리 • 미래에 새로운 상태 코드가 추가되어도 클라이언트를 변경하지 않아도 됨 예) • 299 ??? -> 2xx (S.. 2022. 11. 12. 이전 1 2 3 다음