네트워크8 [네트워크] HTTP 헤더 - 캐시와 조건부 요청 캐시 기본 동작기본적으로 웹 브라우저가 서버에게 요청을 하면 서버는 해당 정보를 모두 준다.여기서는 1.1M 용량을 클라이언트에게 전송했다. 만약 두번째 요청을 한다면?마찬가지로 서버는 1.1M용량의 별 사진을 보낼 것이다. 이렇게 하면 브라우저 로딩 속도 저하, 비용문제 등등이 발생한다.따라서 캐시 컨트롤을 통해서 캐시를 적용하면 브라우저 캐시에 해당 정보가 저장된다.그러면 사용자가 60초 내에 다시 요청을 하게되면 서버에 요청을 하여 데이터를 얻는 것이 아니라, 브라우저 캐시를 통해서 얻게 된다. 만약 60초가 초과된다면? 다시 서버에 요청을 하게된다.이때 별 사진에 업데이트 된 내용이 없더라도 다시 네트워크 다운로드가 발생한다. 검증 헤더와 조건부 요청만약 2번의 경우라면? 다시 요청해서 모든 정.. 2025. 3. 28. [네트워크] HTTP 헤더 - 일반헤더 HTTP 헤더 개요 일반적으로 헤더 내 필드의 구성은 이러하다 헤더는 HTTP 전송에 필요한 모든 부가정보를 가지고 있다. 최신스펙에서 메세지는 표현헤더와 표현데이터로 나뉜다.메세지 본문 = 페이로드표현은 요청이나 응답에서 전달할 실제 데이터이다. 표현헤더는 표현 데이터를 해설할 수 있는 정보를 제공한다.(유형, 길이..) 표현Content - Type미디어 타입, 문자 인코딩을 나타낸다. Content - Encoding표현 데이터를 압축하기 위해 사용한다.데이터를 전달하는 곳에서 압축 후 인코딩 헤더를 추가한다.그러면 데이터를 읽는 곳에서 인코딩 헤더의 정보로 압축해제한다. Content-Language표현 데이터의 자연언어를 표현한다.Content-Length표현데이터의 길이바이트 단위로 표현된다... 2025. 3. 28. [네트워크] HTTP 상태코드 HTTP 상태코드 소개상태코드란? 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능이다.이렇게 상태코드의 앞자리 부분에 따라 의미가 달라진다 1XX는 거의 사용되지 않으므로 생략한다. 2xx - 성공200번대는 클라언트의 요청을 성공적으로 처리했음을 의미한다.200 OK요청 성공을 의미한다. 201 created요청 성공해서 새로운 리소스가 생성됨을 나타낸다. 202 Accepted요청이 접수되었으나 처리가 왼료되지는 않음접수시간과 처리 시간의 시간차가 있을 때 주로 사용된다. 204 No Content서버가 요청을 성공적으로 수행했지만, 응답 본문에 보낼 데이터가 없음예를 들어 save를 했을 때 결과로 받을 내용이 아무것도 없다. 3xx - 리다이렉션요청을 완료하기 위해 유저 에이전트의 추.. 2025. 3. 28. [네트워크] HTTP 메서드 활용 클라이언트에서 서버로 데이터 전송GET메서드에서는 주로 쿼리파라미터를 통한 데이터 전송이 이루어지고, 주로 정렬필터(검색어)가 전달된다. 그리고 POST,PUT,PATCH와 같은 메서드는 메세지 바디를 통해서 데이터 전송을 한다. 정적 데이터 조회정적 데이터는 주로 GET 메서드를 사용하고, 일반적으로 쿼리 파라미터 없이 리소스 경로로 단순하게 조회 가능하다. 동적 데이터 조회주로 검색어, 정렬필터 등 조회 결과에 대한 조건에 주로 사용된다. HTML Form 데이터 전송참고로 HTMLFORM 전송은 GET와 POST만 지원한다.이렇게 HTML FORM 형식으로도 전송할 수 있는데 이 때 브라우저에서 HTTP 메세지를 위와 같이 생성한다.전송 데이터를 url encoding 처리하고, form 내용을 메.. 2025. 3. 28. [네트워크] HTTP 메서드 HTTP API를 만들어보자왼쪽과 같은 요구사항이 들어왔다고 했을 때 URI설계를 오른쪽과 같이 하는건 좋지 않다.가장 중요한건 리소스 식별이기 때문이다.URI에서는 회원이라는 리소스만 식별하면 된다 -> 회원 리소스를 URI에 매핑한다! 따라서 이와 같이 설계하는 것이 좋다.URI는 리소스만 식별 -> 행위는 어떻게 구분할까?? HTTP 메서드HTTP 주요 메서드는 위와 같다. GET리소스를 조회한다.서버에 전달하고 싶은 데이터는 쿼리를 통해서 전달한다.바디는 거의 사용하지 않는다.(지원하지 않는 곳이 더 많아서..)POST요청 데이터를 처리한다.메시지 바디를 통해 서버로 요청 데이터를 전달한다. 주로 신규 리소스 등록, 프로세스 처리에 사용된다.POST는 저장할때만 쓰이지는 않는다. POST를 사용하.. 2025. 3. 27. [네트워크] HTTP 기본 모든 것이 HTTPHTTP 메세지에 모든 것을 전송한다.HTML, JSON 등 거의 모든 형태의 데이터를 전송 가능하다 우리가 주로 사용하는 것은 HTTP/1.1 버전이다. 현재 HTTP2, 3이 나왔다. HTTP/1.1, HTTP/2는 TCP를 사용하고, HTTP3은 UDP를 사용한다. HTTP 특징클라이언트 서버 구조무상태 프로토콜, 비연결성HTTP 메시지단순함, 확장가능 클라이언트 서버 구조Request, Response 구조클라이언트는 서버에 요청을 보내고, 응답을 대기서버가 요청에 대한 결과를 만들어서 응답 -> 서로 독립적으로 움직인다는 장점이 있다. Stateful, Stateless 차이상태유지상태유지는 위와 같이 점원(서버)가 클라이언트의 정보를 기억한다.-> 중간에 점원이 바뀌면 안된다.. 2025. 3. 25. 이전 1 2 다음