본문 바로가기

Learning-log/Spring & JPA55

(모든 개발자를 위한 HTTP 웹 기본 지식) 6-(1)~(5) HTTP 상태코드 - HTTP 상태코드 클라이언트가 보낸 요청의 처리 상태르르 응답에서 알려주는 기능 1XX(Informational) : 요청이 수신되어 처리중(거의 사용하지 않으므로 생략) 2XX(Successful) : 요청 정상 처리 성공 200 : ok : ex. GET 요청이 오면 결과를 정상적으로 처리해서 응답할 경우 201 : Created ex. POST요청으로 신규자원 생성 요청 -> 서버에서는 신규 리소스를 만들고 응답코드 201로 응답 202 : Acceapted 요청이 접수는 되었으나 처리는 완료X 배치 처리 같은 곳에서 사용. 204 : No Content 서버가 요청을 성공적으로 수행했지만, 응답 페이로드 본문에 보낼 데이터가 없음 ex. 웹 문서 편집기에서 save 버튼 save버튼의 결과로 .. 2023. 4. 22.
(모든 개발자를 위한 HTTP 웹 기본 지식) 5-(1)~(2) HTTP메서드 활용 - 클라이언트에서 서버로 데이터 전송 데이터 전달 방식 쿼리 파라미터를 통한 데이터 전송 GET 주로 정렬 필터(검색어) 메시지 바디를 통한 데이터 전송 POST, PUT, PATCH 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 상황 4가지 정적 데이터 조회 : 쿼리 파라미터 미사용 추가적인 데이터 전달 없음. 단순히 URI경로만 넣으면 그 이미지 리소스를 만들어서 클라이언트에게 내려주는 것. 이미지, 정적 텍스트 문서 조회는 GET으로 사용 정적 데이터는 일반적으로 쿼리 파라미터 없이 리소스 경로로 단순하게 조회 가능 동적 데이터 조회 쿼리 파라미터 사용 서버에서 해당 요청을 받아 쿼리 파라미터를 기반으로 정렬 필터해서 결과를 동적으로 생성 주로 검색, 게시판 목록에서 정렬 필터(검색어) 들이 .. 2023. 4. 20.
(모든 개발자를 위한 HTTP 웹 기본 지식) 4-(1)~(5) HTTP메서드 - HTTP API를 만들어보자 실무에 투입됐다고 생각해보자. 요구사항을 가지고 회원 정보 관리 API를 만들어보자 회원 목록 조회 회원 조회 회원 등록 회원 수정 회원 삭제 API URI설계 회원 목록 조회 / read-member-list 회원 조회 / read-member-by-id 회원 등록 / create-member 회원 수정 / update-member 회원 삭제 / delete-member 위와 같이 설계하면 좋은 설계일까? 가장 중요한 것은 리소스 식별이다. 리소스의 의미는? 회원을 등록하고 수정하고 조회하는게 리소스가 아님 미네랄을 캐라 => 미네랄이 리소스 회원이라는 개념 자체가 리소스 리소스를 어떻게 식별하는 게 좋을까 회원을 등록하고 수정, 조회하는 건 모두 배제 회원이라는 리소스.. 2023. 4. 19.
(모든 개발자를 위한 HTTP 웹 기본 지식) 3-(4) 비연결성, (5) HTTP메시지 - 비연결성 연결을 유지하는 모델 클라이언트1 -> 요청 -> 서버 -> 응답 이 때도 클라이언트 2, 클라이언트 3도 연결 유지됨 연결이 유지된 서버의 자원이 소모되는 것 단점 : 클라이언트 2,3이 놀고 있어도 계속 연결 유지해야함 연결 유지하지 않는 모델 클라이언트1이 요청 , 응답 받은 후 연결 끊어버리기 자원을 요청을 주고받을 때만 연결하고 끊어버려서 서버 연결에 필요한 자원 아낄 수 있음. 최소한의 자원으로 서버 유지 가능 비연결성 HTTP는 기본이 연결을 유지하지 않는 모델 일반적으로 초 단위의 이하의 빠른 속도로 응답 1시간동안 수천명이 서비스를 사용해도 실제 서버에서 동시에 처리하는 요청은 수십개 이하로 매우 작음 서버 자원 매우 효율적으로 사용 가능 한계와 극복 TCP/IP 연결을 새로.. 2023. 4. 19.
(모든 개발자를 위한 HTTP 웹 기본 지식) 3-(1) 모든 것이 HTTP, (2) 클라이언트 서버 구조, (3) Stateful, Stateless - 모든 것이 HTTP(HyperText Transfer Protocol) HTTP 메시지에 모든 것을 전송 HTML, TEXT 이미지, 음성, 영상 파일 JSON, XML(API) 거의 모든 형태의 데이터 전송 가능 서버 간에 데이터를 주고 받을 때도 대부분 HTTP 사용 HTTP의 역사 HTTP/0.9 1991년에 시작 ... HTTP/1.1 1997년 : 가장 많이 사용, 우리에게 가장 중요한 버전 HTTP/2 2015년 성능개선 HTTP/3 진행중 : TCP 대신에 UDP 사용, 성능 개선 기반 프로토콜 TCP : HTTP/1.1 , HTTP/2 UDP : HTTP/3 현재 HTTP/1.1 주로 사용 HTTP/2, HTTP/3 도 점점 증가하고 있음 HTTP특징 클라이언트 서버 구조 무상태 프로토.. 2023. 4. 18.
(모든 개발자를 위한 HTTP 웹 기본 지식) 2-(1) URI, (2) 웹 브라우저 요청 흐름 - URI(Uniform Resource Identifier)URI ? URL ? URN?URI : 로케이터(locater), 이름(name) 또는 둘 다 추가로 분류될 수 있음.URI 안에 URL(Resource Locator), URN(Resource Name)이 포함 됨위치는 변할 수 있지만 이름은 변하지 않음urn:isbn:8960777331 : 어떤 책의 isbn URNURN 이름 만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되지 않음URI, URL 같은 의미로 이야기할 예URI 단어 뜻Uniform : 리소스 식별하는 통일된 방식Resource : 자원, URI로 식별할 수 있는 모든 것(제한 없음)Identifier : 다른 항목과 구분하는데에 필요한 정보URL 분석https://www.. 2023. 4. 17.