캐시 기본 동작 캐시가 없을 때 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. 브라우저 로딩 속도가 느리고 인터넷 네트워크는 비싸다. 캐시 적용 응답 HTTP/1.1 200 OK Content-Type: image/jpeg cache-control: max-age=60 Content-Length: 34012 lkj123kljoiasudlkjaweioluywlnfdo912u34ljko98udjkla slkjdfl;qkawj9;o4ruawsldkal;skdjfa;ow9ejkl3123123 cache-control: max-age=60 를 통해 60초동안 유효한 브라우저 캐시를 생성 60초 안에 재요청시 브라우저 캐시에 있는 정보를 통해 조회 캐시 가능 시간 동안 네트워크를 ..
HTTP 헤더 HTTP 전송에 필요한 모든 부가 정보 예 ) 메시지 바디의 내용, 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보 등 필요시 임의의 헤더 추가 가능 표준 헤더 : https://en.wikipedia.org/wiki/List_of_HTTP_header_fields 필요시 임의의 헤더 추가 가능 (helloworld: hihi) HTTP BODY 메시지 본문을 통해 표현 데이터 전달 (본문 = 페이로드) RFC7230(최신), 표현은 요청이나 응답에서 전달할 실제 데이터 (표현 헤더 + 표현 데이터) 표현 Content-Type : 표현 데이터의 형식 예 ) text/html, application/json , image/png Content-Encoding : 표현 데..
상태 코드 클라이언트가 보낸 요청의 처리 상태를 응답해서 알려주는 기능 1xx (Informational): 요청이 수신되어 처리중 (거의 사용하지 않음) 2xx (Successful): 요청 정상 처리 3xx (Redirection): 요청을 완료하려면 추가 행동이 필요 4xx (Client Error): 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없음 5xx (Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못함 2xx (Successful) 클라이언트의 요청을 성공적으로 처리 200 OK (가장 많이 보는 케이스) 201 Created 요청 성공해서 새로운 리소스가 생성됨 예 ) 회원가입 202 Accepted 요청이 접수 되었으나 처리가 완료되지 않았음 예 )..
HTTP URI 설계 URI (Uniform Resource Identifier) : 리소스 식별자 회원을 등록하고 수정하고 조회하는게 리소스가 아니다. 미네랄을 캐라 -> 캐라가 아닌 미네랄이 리소스이다. 리소스 식별, URI 계층 구조 활용 회원 목록 조회 /members 회원 조회 /members/{id} 회원 등록 /members/{id} 회원 수정 /members/{id} 회원 삭제 /members/{id} URI는 리소스만 식별 리소스는 해당 리소스를 대상으로하는 행위를 분리 리소스 : 회원 행위 : 조회, 등록, 삭제, 변경 행위 (메서드는) HTTP 메서드로 구분한다 HTTP 메서드 주요 메서드 GET : 리소스 조회 POST : 요청 데이터 처리, 주로 등록 PUT : 리소스를 대체, 해..
HTTP Hyper Text Transper Protocol HTML 같은 리소스 들을 가져올 수 있도록 해주는 프로토콜 HTML, TEXT, 이미지, 음성, 영상, 파일, JSON, XML (API) 등 모든 형태 데이터 전송 가능 서버간에 데이터를 주고 받을 때도 대부분 HTTP를 사용한다. HTTP 역사 HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더X HTTP/1.0 1996년: 메서드, 헤더 추가 HTTP/1.1 1997년: 가장 많이 사용 RFC2068 (1997) -> RFC2616 (1999) -> RFC7230~7235 (2014) RFC : Request For Comments : 비평을 기다리는 문서라는 의미로 메모형태 HTTP/2 2015년: 성능 개선 HTTP/3..