분류 전체보기

Spring/모든 개발자를 위한 HTTP 웹 기본 지식

[모든 개발자를 위한 HTTP 웹 기본 지식] 05. HTTP 메서드 활용 - 클라이언트에서 서버로 데이터 전송

(인프런) 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식을 공부하고 리뷰한 글입니다. 1. 클라이언트에서 서버로 데이터 전송 1. 데이터 전달 방식 데이터 전달 방식은 크게 2가지 경우로 나뉜다. 1) 쿼리 파라미터를 통한 데이터 전송 - GET - 주로 정렬 필터(검색어) 2) 메시지 바디를 통한 데이터 전송 - POST, PUIT, PATCH - 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 2. 4가지 상황 1) 정적 데이터 조회 - 이미지, 정적 텍스트 문서 2) 동적 데이터 조회 - 주로 검색, 게시판 목록에서 정렬 필터(검색어) 3) HTML Form을 통한 데이터 전송 - 회원 가입, 상품 주문, 데이터 변경 4) HTTP API를 통한 데이터 전송 - 회원 가입, 상품 주문, ..

Spring/모든 개발자를 위한 HTTP 웹 기본 지식

[모든 개발자를 위한 HTTP 웹 기본 지식] 04. HTTP 메서드 - HTTP 메서드의 속성

(인프런) 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식을 공부하고 리뷰한 글입니다. 4. HTTP 메서드의 속성 1) 안전(Safe Methods) 2) 멱등(Idempotent Methods) 3) 캐시가능(Cacheable Methods) 1. 안전(Safe) 호출해도 리소스를 변경하지 않는다 1) 안전O: GET, HEAD 2) 안전X: POST, PUT, PATCH, DELETE Q. 계속 호출하면, 로그 같은 것이 쌓여서 장애가 발생할 수도 있지 않은가? A. 안전은 해당 리소스만 고려한다. 그런 부분까지 고려하지 않는다. 2. 멱등(Idempotent) f(f(x)) = f(x) 클라이언트가 서버에 같은 요청을 여러 번 해도 결과가 똑같다. (한 번 호출하든 두 번 호출하든 100번 ..

Spring/모든 개발자를 위한 HTTP 웹 기본 지식

[모든 개발자를 위한 HTTP 웹 기본 지식] 04. HTTP 메서드 - PUT, PATCH, DELETE

(인프런) 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식을 공부하고 리뷰한 글입니다. 3. PUT, PATCH, DELETE 1. PUT 리소스 대체 - 리소스가 있으면 대체(덮어씀) - 리소스가 없으면 생성 (중요!) 클라이언트가 리소스를 식별 - 클라이언트가 리소스 위치를 알고 URI 지정(POST와 차이점) POST) /members :→ 클라이언트는 리소스 위치 모름 PUT) /members/100 → 클라이언트는 리소스 위치 알고 URI 지정 2. PUT 동작 과정 PUT은 리소스가 있으면 대체, 없으면 생성하는 2가지 경우가 존재한다. 1) 리소스 대체1 - 메시지 전달 클라이언트가 /members/100에 리소스를 대체하기 위해 PUT 방식으로 HTTP 요청 메시지를 서버에 보낸다. ..

Spring/모든 개발자를 위한 HTTP 웹 기본 지식

[모든 개발자를 위한 HTTP 웹 기본 지식] 04. HTTP 메서드 - GET, POST

(인프런) 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식을 공부하고 리뷰한 글입니다. 2. GET, POST HTTP 메서드는 클라이언트가 서버에 무언가를 요청할 때 기대하는 행위이다. 최근에는 리소스라는 단어대신 representation 을 사용하는데, 아직 설명전이니 representation 대신 리소스를 사용하도록 하겠다. 1) GET: 리소스 조회 2) POST: 요청 데이터 처리(주로 등록에 사용) 3) PUT: 리소스를 대체, 해당 리소스가 없으면 생성(파일을 폴더에 넣는 것과 비슷) 4) PATCH: 리소스 부분 변경(e.g 회원의 이름 변경) 5) DELETE: 리소스 삭제 1) HEAD: GET과 동일하지만 메시시 부분(message body)을 제외하고, 상태 줄(status..

Spring/모든 개발자를 위한 HTTP 웹 기본 지식

[모든 개발자를 위한 HTTP 웹 기본 지식] 04. HTTP 메서드 - HTTP API를 만들어보자

(인프런) 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식을 공부하고 리뷰한 글입니다. 1. HTTP API를 만들어보자 1. 요구사항 회원 정보 관리 API를 만들어라. 1) 회원 목록 조회 2) 회원 조회 3) 회원 등록 4) 회원 수정 5) 회원 삭제 2. API URI 설계1 API 기능에 대응하는 직관적인 이름으로 URI 를 설계하면, 다음과 같이 URL을 모두 따로 만들어야 한다. 1) 회원 목록 조회 - /read-member-list 2) 회원 조회 - /read-member-by-id 3) 회원 등록 - /create-member 4) 회원 수정 - /update-member 5) 회원 삭제 - /delete-member 3. 이것은 좋은 URI 설계일까? 가장 중요한 것은 리소스 ..

CS/네트워크

[Network] OSI 7 Layer

1. OSI 모델 vs TCP/IP 모델 현대의 인터넷은 OSI 모델이 아닌, TCP/IP 모델을 따르고 있다. TCP/IP 모델이 업데이트되면서 기존의 OSI 모델과 Physical, DataLink, Network, Transport 계층까지는 동일하고 나머지 계층이 Application 계층으로 합쳐진 형태이다. 여기서는 TCP/IP Updated 모델에 맞춰서 설명을 한다. 2. 1계층: Physical Layer (물리 계층) 1) 두 대의 컴퓨터가 통신하려면? (기본 아이디어) 모든 파일, 프로그램은 0과 1의 나열이므로 0과 1을 주고받을 수 있으면 두 PC간 모든 데이터를 주고 받을 수 있다. (문제점) 실제로는 2가지 문제로 인해 올바르지 못한 신호(전선이 통과시킬 수 있는 범위의 주파수..

Spring/모든 개발자를 위한 HTTP 웹 기본 지식

[모든 개발자를 위한 HTTP 웹 기본 지식] 03. HTTP 기본 - HTTP 메시지

(인프런) 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식을 공부하고 리뷰한 글입니다. 5. HTTP 메시지(중요!) 1. 모든 것이 HTTP (복습) HTTP 메시지에 모든 것을 전송 1) 거의 모든 형태의 데이터 전송 가능 - HTML, TEXT - IMAGE, 음성, 영상, 파일 - JSON, XML(API) 2) 서버 간에 데이터를 주고받을 때도 대부분 HTTP 사용 2. HTTP 요청 메시지와 HTTP 응답 메시지 보는 것과 같이, HTTP 요청 메시지와 HTTP 응답 메시지는 형태가 조금 다르다. 3. HTTP 메시지(HTTP 요청 메시지와 HTTP 응답 메시지)의 구조 3-1. HTTP 메시지 구조 1) start-line: 시작 라인 2) header: 헤더 3) empty line:..

Spring/모든 개발자를 위한 HTTP 웹 기본 지식

[모든 개발자를 위한 HTTP 웹 기본 지식] 03. HTTP 기본 - 비 연결성(connectionless)

(인프런) 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식을 공부하고 리뷰한 글입니다. 4. 비 연결성(connectionless) 1. 연결을 유지하는 모델 TCP/IP는 연결을 유지하는 모델이다. 1) 클라이언트1&서버 TCP/IP 연결 클라이언트1은 서버와 연결된 후, 요청과 응답을 주고 받는다. 현재 클라이언트 1은 서버와 연결이 유지된 상태이다. 2) 클라이언트2&서버 TCP/IP 연결 클라이언트2는 서버와 연결된 후, 요청과 응답을 주고 받는다. 현재 클라이언트1, 2는 서버와 연결이 유지된 상태이다. 3) 클라이언트3&서버 TCP/IP 연결 클라이언트3은 서버와 연결된 후, 요청과 응답을 주고 받는다. 현재 클라이언트1, 2, 3은 서버와 연결이 유지된 상태이다. 4) 클라이언트1&서버..

HSY_mumu
'분류 전체보기' 카테고리의 글 목록 (5 Page)