HTTP 8

[HTTP 웹 기본 지식] 섹션8. HTTP 헤더2 캐시와 조건부 요청

※ 김영한 님의 인프런 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 요약한 내용입니다. ✅ 캐시 📌 캐시가 없을 때 데이터가 변경되지 않아도 계속 네트워크를 통해 데이터를 다운로드 받아야함 인터넷 네트워크는 매우 느리고 비쌈 브라우저 로딩 속도가 느림 느린 사용자 경험 📌 캐시 적용 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. 비싼 네트워크 사용량을 줄일 수 있음 브라우저 로딩 속도가 빠름 빠른 사용자 경험 📌 캐시 시간 초과 캐시 유효 시간이 초과하면, 서버를 통해 데이터를 다시 조회하고 캐시를 갱신한다. 네트워크 다운로드 발생 ✅ 검증 헤더와 조건부 요청 📌 검증 헤더 Last-Modified & 조건부 요청 if-modified-since 사용 첫번째 요청시 서버는 클..

Web 2022.11.20

[HTTP 웹 기본 지식] 섹션7. HTTP 헤더1 일반 헤더

※ 김영한 님의 인프런 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 요약한 내용입니다. ✅ HTTP 헤더 header-field = field-name ":" OWS field-value OWS (OWS:띄어쓰기 허용) HTTP 전송에 필ㅇ한 모든 부가정보 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보 필요시 임의의 헤더 추가 가능 📌 과거 RFC2616 General 헤더: 메시지 전체에 적용되는 정보 Request 헤더: 요청 정보 Response 헤더: 응답 정보 Entity 헤더: 엔티티 바디 정보, 예) Content-Type: text/html, Content-Length: 3423 message body 엔티티 본문(entit..

Web 2022.11.19

[HTTP 웹 기본 지식] 섹션6. HTTP 상태코드

※ 김영한 님의 인프런 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 요약한 내용입니다. ✅ 1xx (Informational) 요청이 수신되어 처리중. 거의 사용하지 않음 ✅ 2xx (Successful) 클라이언트의 요청을 성공적으로 처리 📌 200 OK 요청 성공 📌 201 Created 요청 성공해서 새로운 리소스가 생성됨 생성된 리소스는 응답의 Location 헤더 필드로 식별할 수 있다. 📌 202 Accepted 요청이 접수되었으나 처리가 완료되지 않았음 배치 처리 요청 접수 후 1시간 뒤에 배치 프로세스가 요청을 처리 📌 204 No Content 서버가 요청을 성공적으로 수행했지만, 응답 페이로드 본문에 보낼 데이터가 없음 Save 버튼 ✅ 3xx (Redirection) 웹 브라..

Web 2022.11.18

[HTTP 웹 기본 지식] 섹션5. HTTP 메서드 활용

※ 김영한 님의 인프런 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 요약한 내용입니다. ✅ 클라이언트에서 서버로 데이터 전송 쿼리 파라미터를 통한 데이터 전송 GET 주로 정렬 필터 (검색어) 메시지 바디를 통한 데이터 전송 POST, PUT, PATCH 회원가입, 상품주문, 리소스 등록, 리소스 변경 📌 4가지 상황 정적 데이터 조회 이미지, 정적 텍스트 문서 GET 동적 데이터 조회 검색, 게시판 목록에서 정렬 필터(검색어) 조회 조건을 줄여주는 필터, 조회 결과를 정렬하는 정렬 조건에 주로 사용 GET GET은 쿼리 파라미터를 사용해서 데이터 전달 HTML FORM 을 통한 데이터 전송 회원 가입, 상품 주문, 데이터 변경 POST Content-Type: application/x-www-..

Web 2022.11.18

[HTTP 웹 기본 지식] 섹션4. HTTP 메서드

※ 김영한 님의 인프런 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 요약한 내용입니다. ✅ URI 설계 URI는 리소스만 식별한다. 리소스와 행위를 분리 리소스: 회원 행위: 조회, 등록, 삭제, 변경 ✅ HTTP 메서드 종류 📌 GET 리소스 조회 서버에 전달하고 싶은 데이터는 쿼리 파라미터를 통해서 전달 메시디 바디를 사용해서 데이터를 전달할 수 있지만, 지원하지 않는 서버들이 있다. 권장하지 않는다. 📌 POST 요청 데이터 처리 메시지 바디를 통해서 서버로 요청 데이터를 전달 서버는 메시지 바디를 통해 들어온 데이터를 처리하는 모든 기능을 수행 주로 전달된 데이터로 신규 리소스 등록, 프로세스 처리에 사용한다. 요청 데이터 처리? 대상 리소스가 리소스의 고유 한 의미 체계에 따라 요청에 ..

Web 2022.11.17

[HTTP 웹 기본 지식] 섹션3. HTTP 기본

※ 김영한 님의 인프런 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의 요약한 내용입니다. ✅ HTTP HyperText Transfer Protocol HTML, TEXT, IMAGE, 음성, 영상, 파일, JSON, XML ... 거의 모든 형태의 데이터 전송 가능 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용 지금은 HTTP를 주로 사용한다. HTTP/1.1 : 가장 많이 사용하는 버전. 우리에게 가장 중요 HTTP/2, HTTP/3 : HTTP/1.1에 성능 개성 버전 기반 프로토콜 TCP : HTTP/1.1, HTTP/2 UDP : HTTP/3 ✅ HTTP 특징 클라이언트 - 서버 구조 무상태 프로토콜(Stateless), 비연결성 HTTP 메시지 단순함, 확장 가능 ✅ 클라이언트 ..

Web 2022.11.17

[HTTP 웹 기본 지식] 섹션2. URI와 웹 브라우저 요청 흐름

※ 김영한 님의 인프런 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의 요약한 내용입니다. ✅ URI, URL, URN URI (Uniform Resource Identifier)에 URL (Uniform Resource Locator), URN (Uniform Resource Name) 포함 📌 URI , URL, URN 뜻 Uniform : 리소스 식별하는 통일된 방식 Resource : 자원, URI로 식별할 수 있는 모든 것 Identifier : 다른 항목과 구분하는데 필요한 정보 Locator : 리소스가 있는 위치를 지정 Name : 리소스에 이름을 부여 위치는 변할 수 있지만, 이름은 변하지 않는다. 📌 URL schem://[userinfo@]host[:port] [/path] [?q..

Web 2022.11.16

[HTTP 웹 기본 지식] 섹션1.인터넷 네트워크

※ 김영한 님의 인프런 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의 요약한 내용입니다. ✅ 인터넷 통신 서버와 클라이언트는 복잡한 인터넷 망, 노드들을 거쳐 통신한다. ✅ IP (Internet Protocol) 패킷(Packet) 이라는 통신 단위로 지정한 IP 주소에 데이터를 전달한다. IP 패킷 정보: 출발지 IP, 목적지 IP, 기타..., 전송 데이터 클라이언트가 보낸 IP 패킷은 노드들을 거쳐 서버에 도착 서버에서 응답 IP 패킷을 보내 노드들을 거쳐 클라인언트에 도착 😓 IP 프로토콜의 한계 1. 비연결성 클라이언트는 대상 서버가 패킷을 받을 수 있는 상태인지 모른다. 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷을 전송한다. (모르는채로 전송) 2. 비신뢰성 중간 노드의 서버..

Web 2022.11.04