Network
[Network] HTTP 상태코드
상태코드 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 1xx(Informational): 요청이 수신되어 처리 중을 의미한다. 2xx(Successful): 요청 정상 처리한다. 3xx(Refirection): 요청을 완료하려면 추가 행동이 필요하다. 4xx(Client Error): 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없다. 5xx(Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못한다. 미래에 새로운 상태 코드가 추가되어도 클라이언트를 변경하지 않아도 된다. 299 -> 2xx(Successful) 451 -> 4xx(Client Error) 599 -> 5xx(Server Error) 2xx(Sucessful) - 클라이언트의 요청을 성공..
[Network] HTTP 메서드 활용
클라이언트에서 서버로 데이터 전송 데이터 전달 방식은 크게 2가지이다. 1. 쿼리 파라미터를 통한 데이터 전송 GET, 정렬 필터로 주로 검색어에 사용된다. 2. 메시지 바디를 통한 데이터 전송 POST, PUT, PATCH 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 4가지 상황 1. 정적 데이터 조회 이미지, 정적 텍스트 문서 2. 동적 데이터 조회 주로 검색, 게시판 목록에서 정렬 필터로 쓰인다. 3. HTML FORM을 통한 데이터 전송 회원 가입, 상품 주문, 데이터 변경에 쓰인다. 4. HTTP API를 통한 데이터 전송 회원가입, 상품 주문, 데이터 변경 서버 to 서버, 앱 클라이언트, 웹 클라이언트(Ajax) 정적 데이터 조회의 경우(쿼리 파라미터 미사용) 이미지, 정적 텍스트 문..
[Network] HTTP Method(GET, POST, PUT, PATCH, DELETE)
URI 설계의 중요한 것은 리소스 식별 API URI(Uniform Resource Identifier) 리소스의 의미 회원을 등록하고 수정하고 조회하는 것은 리소스가 아니다. 예를들어 자원을 캐라 -> 자원이 리소스이다. 회원이라는 개념 자체가 바로 리소스인 것이다. 회원이라는 리소스만 식별하면 된다. -> 회원 리소스를 URI에 매핑하면 된다. 좋지 못한 URI설계 - 회원 목록 조회 /read-member-list - 회원 조회 /read-member-by-id - 회원 등록 /create-member - 회원 수정 /update-member - 회원 삭제 /delete-member 좋은 URI 설계 - 회원 목록 조회 /members - 회원 조회 /members/{id} - 회원 등록 /memb..
[Network] HTTP(Stateful Stateless 차이, 비 연결성, 클라이언트 서버 구조 ...)
HTTP (HyperText Transfer Protocol) - 역사 HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더X HTTP/1.0 1996년: 메서드, 헤더 추가 HTTP/1.1 1997년: 가장 많이 사용, 우리에게 가장 중요한 버전 RFC2068 (1997) -> RFC2616 (1999) -> RFC7230~7235 (2014) HTTP/2 2015년: 성능 개선 HTTP/3 진행중: TCP 대신에 UDP 사용, 성능 개선 - 기반 프로토콜 TCP: HTTP/1.1, HTTP/2 UDP: HTTP/3 현재 HTTP/1.1 주로 사용 - HTTP/2, HTTP/3 도 점점 증가 - HTTP 특징 클라이언트 서버 구조를 갖는다. 무상태(Stateless) 프로토콜, 비연결성 -..
[Network] URI, URL, URN
URI, URL, URN URI는 로케이터(locator), 이름(name) 또는 둘다 추가로 분류 될 수 있다. URI: 리소스의 식별 URL: 리소스의 위치 URN: 리소스의 이름 URI Uniform: 리소스 식별하는 통일된 방식 Resource: 자원, URI로 식별할 수 있는 모든 것(제한 없음) Identifier: 다른 항목과 구분하는데 필요한 정보 URL, URN URL - Locator: 리소스가 있는 위치를 지정한다. URN - Name: 리소스에 이름을 부여한다. 위치는 변할 수 있지만, 이름은 변하지 않는다. URN 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되지 않는다. URL분석 https://www.google.com/search?q=hello&hl=ko URL sc..