개발 공부/Network
-
웹 소켓(WebSocket)이란 무엇인가요?개발 공부/Network 2021. 7. 20. 09:27
이 게시물은 우아한 테크코스 10분 테코톡 "코일의 WebSocket"을 보고 정리한 내용입니다. 저작권 관련해서 문제가 되면 댓글로 남겨주세요. 바로 삭제하겠습니다. 영상 링크 : https://www.youtube.com/watch?v=MPQHvwPxDUw 1) 웹 소켓이란? 두 프로그램 간의 메시지를 교환하기 위한 통신 방법 중 하나이다. W3C와 IETF에 의해 자리잡은 표준 프로토콜 중 하나이다. 현재 HTML5 환경에서 많이 사용된다. 2) 웹 소켓의 특징 양방향 통신(Full-Duplex) 데이터 송수신을 동시에 처리할 수 있는 통신 방법 클라이언트와 서버가 서로에게 원할 때 데이터를 주고 받는다. 통상적인 HTTP 통신은 클라이언트가 요청을 보내는 경우에만 서버가 응답하는 단방향 통신 실시..
-
7. HTTP 헤더 2 - 캐시와 조건부 요청개발 공부/Network 2021. 6. 11. 23:47
본 게시물은 김영한님의 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 듣고 정리한 내용입니다. 따라서 모든 저작권은 인프런과 김영한님께 있음을 밝힙니다. 혹시라도 문제가 된다면 삭제하겠습니다. 댓글에 남겨주세요. 1) 캐시 기본 동작 캐시가 없다면 원하는 이미지 등의 파일을 서버에 요청할 때, 해당 파일의 헤더, 바디 부분을 요청할 때 마다 새로 받는다. 그래서 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. 따라서 느리고, 돈도 많이 나가고, 사용자 경험이 더뎌진다. 캐시를 적용하면 cache-control: max-age=60 이런식으로 요청하면, 캐시가 최대 60초 살아있다는 뜻이다. 따라서 요청한 파일을 캐시에 저장하고, 60초 간은 이 파일이 로컬에 살아있..
-
6. HTTP 헤더 1 - 일반헤더개발 공부/Network 2021. 6. 1. 18:43
본 게시물은 김영한님의 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 듣고 정리한 내용입니다. 따라서 모든 저작권은 인프런과 김영한님께 있음을 밝힙니다. 혹시라도 문제가 된다면 삭제하겠습니다. 댓글에 남겨주세요. 1) HTTP 헤더 개요 용도 HTTP 전송에 필요한 모든 부가정보 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보 등등 표준 헤더가 너무너무 많다. 필요시 임의의 헤더 추가 가능하다. HTTP Body 메시지 본문을 통해 표현 데이터를 전달 메시지 본문 = 페이로드(payload) 표현은 요청이나 응답에서 전달할 실제 데이터 표현 헤더는 표현 데이터를 해석할 수 있는 정보 제공 (데이터 유형, 데이터 길이, 압축 정보 등) 2..
-
5. HTTP 상태코드(2xx, 3xx, 4xx, 5xx)개발 공부/Network 2021. 5. 17. 10:07
본 게시물은 김영한님의 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 듣고 정리한 내용입니다. 따라서 모든 저작권은 인프런과 김영한님께 있음을 밝힙니다. 혹시라도 문제가 된다면 삭제하겠습니다. 댓글에 남겨주세요. 1) HTTP 상태코드 소개 만약 모르는 상태 코드가 나타나더라도, 2xx / 3xx 처럼 몇 백대 오류인지를 파악하여 그에 대한 처리를 할 수 있다. 따라서 미래에 새로운 상태 코드가 추가되어도 클라이언트를 변경하지 않아도 된다. 1xx 상태코드는 거의 사용하지 않으므로 생략한다. 2) 2xx - 성공 클라이언트의 요청을 성공적으로 처리 보통은 200이나 201을 많이 사용하는 편이다. 회사마다 정해진 규칙이 있다. 200 OK 요청에 성공함. 보통 GET 요청에 대해 정상적으로 응답했..
-
4. HTTP 메서드의 활용, HTTP API 설계 예시개발 공부/Network 2021. 5. 9. 16:16
본 게시물은 김영한님의 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 듣고 정리한 내용입니다. 따라서 모든 저작권은 인프런과 김영한님께 있음을 밝힙니다. 혹시라도 문제가 된다면 삭제하겠습니다. 댓글에 남겨주세요. 1) 클라이언트에서 서버로 데이터 전송 데이터 전달 방식은 크게 2가지 쿼리 파라미터를 통한 데이터 전송 GET 주로 정렬 필터(검색어) 메시지 바디를 통한 데이터 전송 POST, PUT, PATCH 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 데이터를 전송하는 4가지 상황 정적 데이터 조회 쿼리 파라미터를 사용하지 않는다. 이미지, 정적 텍스트 문서 조회는 GET을 사용 정적 데이터는 일반적으로 쿼리 파라미터 없이 단순한 리소스 조회만으로도 가능 동적 데이터 조회 쿼리 파라미터를..
-
3. HTTP 메서드(GET, POST, PUT, PATCH, DELETE)개발 공부/Network 2021. 5. 2. 11:36
본 게시물은 김영한님의 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 듣고 정리한 내용입니다. 따라서 모든 저작권은 인프런과 김영한님께 있음을 밝힙니다. 혹시라도 문제가 된다면 삭제하겠습니다. 댓글에 남겨주세요. 1) HTTP API를 만들어보자 요구사항 회원 목록 조회 회원 조회 회원 등록 회원 수정 회원 삭제 API URI 설계 회원목록조회: /read-member-list 회원조회: /read-member-by-id 회원등록: /create-member 회원수정: /update-member 회원삭제: /delete-member 근데 이렇게 하는게 정말 좋은 설계일까? 가장 중요한 것은 리소스 설계!!!!!! API URI 고민 리소스의 의미는 뭘까? -> 회원을 조회하는 것이 리소스가 아니라..
-
2. HTTP, 클라이언트-서버 구조, Stateless, 비연결성, HTTP 메시지개발 공부/Network 2021. 4. 24. 20:35
본 게시물은 김영한님의 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 듣고 정리한 내용입니다. 따라서 모든 저작권은 인프런과 김영한님께 있음을 밝힙니다. 혹시라도 문제가 된다면 삭제하겠습니다. 댓글에 남겨주세요. 1) 모든 것이 HTTP HyperText Transfer Protocol HTTP 메시지에 모든 것을 전송한다. (html, text, image, 음성, 영상, json, xml, 등등 거의 모든 형태의 데이터 전송 가능) HTTP의 역사: 1997년의 1.1버전이 가장 중요하다. 가장 많이 사용하는 버전이다. TCP 프로토콜을 기반으로 HTTP/1.1이나 HTTP/2가 구현된다. HTTP/3는 UDP 프로토콜을 기반으로 구현된다. HTTP의 특징 클라이언트 서버 구조 무상태 프로토콜..
-
1. 인터넷 프로토콜과 URI의 개념개발 공부/Network 2021. 4. 18. 16:29
본 게시물은 김영한님의 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 듣고 정리한 내용입니다. 따라서 모든 저작권은 인프런과 김영한님께 있음을 밝힙니다. 혹시라도 문제가 된다면 삭제하겠습니다. 댓글에 남겨주세요. 1. 인터넷 네트워크 인터넷 통신 클라이언트와 서버가 만약 바로 옆에 있다면, 인터넷이 필요없이 케이블만 연결하면 될 것이다. 하지만 실제 세계에서는 클라이언트와 서버가 물리적으로 굉장히 떨어져 있다. 따라서 중간에 인터넷이라고 하는 서버 노드들의 집합을 통해서 통신을 하게 된다. 과연 어떤 과정을 통해서 통신이 이루어질까? 이를 위해 일단 IP의 개념을 알아야 한다! IP (인터넷 프로토콜) 클라이언트와 서버는 각각 고유의 IP 주소를 가진다. 인터넷 프로토콜은 지정한 IP 주소에 데이..