리소스(resource)
가 들어있다면 단 하나의 정보를 업데이트 시키고 싶은 경우에도 앱전체를 업데이트 시켜야하는 불상사가 일어 날 것이다.앱(클라이언트)
과 받아올 수 있는 정보(서버)
를 나누어서 사용한다.클라이언트(Client)
란, 정보를 요청하는 매체를 이야기하며, 서버(Server)
는 리소스를 제공하는 역할을 이야기한다.쿠키(Cookie)
라는 데이터는 서버가 일방적으로 제공하는 데이터이며, 장기 보관가능하며 유지되는 데이터를 담는다.클라이언트
는 손님과 같고, 서버
는 카운터와도 같다.2 tier architecture
라고 이야기한다.3 tier architecture
.클라이언트
의 종류로는 우리가 사용하는 데스크탑 앱, 스마트폰 앱, 웹 앱 등이 있다.클라이언트
이다.파일 서버
웹 서버
메일 서버
데이터베이스 서버
프로토콜은 컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계이다.
MDN
즉, 통신을 위한 일종의 약속이라고 볼 수 있다. (통신규약)
웹 앱에서는
HTTP
이라는 프로토콜로 서로의 데이터를 교환하며, 이를 이용해서 주고 받는 메시지를HTTP 메시지
라고 한다.동일한 일을 하기 위한 여러 프로토콜이 존재 할 수 있다.
프로토콜
들이 어떤 계층에 속하여 있는지를 표시하는 개념이다.Application Programming Interface
의 약자로, 서버가 클라이언트에게 제공하는 인터페이스이다.API 문서
를 작성해야만 클라이언트가 해당 서버에 접근하여 이를 활용 할 수 있다.URI
를 이용하여 원하는 정보에 접근 할 수 있다.https://example.com/over/there?name=ferret
https://example.com/path/to/page?name=ferret&color=purple
https://example.com/
이다.over/there
path/to/page
으로 나뉘며, ?
뒤에 작성된 내용을 파라미터라고 한다.Method | CRUD |
---|---|
POST | CREATE |
GET | READ |
PUT | UPDATE |
PATCH | UPDATE |
DELETE | DELETE |
PUT
과 PATCH
는 둘 다 UPDATE
의 개념이지만 둘에겐 차이가 존재한다.PUT
은 말그대로 집어넣는다는 뜻으로, 입력할 필드가 3개가 있는 경우 하나만 작성하는 경우 두개는 비어있는 새로운 데이터를 전달한다.PATCH
의 경우 기존에 있는 데이터는 유지하고 요청에 해당하는 값만 바꾼다.https://programmer93.tistory.com/39
→ 찰떡같은 예시
2 tier
에서 클라이언트가 서버에 요청을 하고, 서버가 응답한다.3 tier
라면 서버가 데이터베이스에 요청하고, 데이터베이스가 응답하는데, 이 경우에 서버는 클라이언트가 되고, 데이터베이스는 서버가 된다.