웹 애플리케이션 아키텍처

안윤경·2022년 8월 4일
0

react

목록 보기
6/16
post-thumbnail

1. 클라이언트 - 서버 아키텍처란?

  • 리소스가 존재하는 곳과 리소스를 사용하는 앱을 분리시킨것
    이것을 2-Tier 아키텍쳐 즉 클라이언트 - 서버 아키텍처라고 합니다.

    리소스를 사용하는 앱이 바로 "클라이언트", 리소스를 제공(serve)하는 곳은 "서버"라고 부릅니다.

  • 리소스에 접근하려는 앱은 카페로 치면 손님과 같습니다. 손님은 아메리카노를 마시기 위해 리소스를 가지고 있는 점원에게 요청해야 합니다. 손님의 요청에 따라 점원은 리소스를 담아 응답합니다.
  • 이처럼 클라이언트와 서버는 요청과 응답을 주고받는 관계입니다. 클라이언트-서버 아키텍처에서는 요청이 선행되고 그 후에 응답이 옵니다.

2.클라이언트 -서버통신과 API

  • 클라이언트 - 서버 아키텍처에서의 통신은 요청응답으로 구성됩니다
  • 이를 위해 프로토콜이라는 개념이 등장합니다.
    프로토콜은 통신 규약, 즉 약속입니다. 손님이 주문을 받는 사람에게 대뜸 찾아가 외계어로 주문을 할 수 없듯, 주문을 하기 위해서는 꼭 지켜야 하는 약속이 몇 가지 존재합니다.

HTTP

  • 웹 애플리케이션 아키텍처에서는 클라이언트와 서버가 서로 HTTP라는 프로토콜을 이용해서 서로 대화를 나눕니다. HTTP를 이용해 주고받는 메시지는 "HTTP 메시지"라고 부릅니다.

커피를 주문할 수 있는 여러가지 방법(프로토콜)->서버와 통신할 수 있는 다양한 방법이 존재합니다.
ex)직접 주문 / 모바일 앱 / 키오스크...


프로토콜이 지켜야 하는 규약


API란?

API는 Application Programming Interface의 약자이며, Interface의 사전적 의미는 "의사소통이 가능"하도록 만들어진 "접점"을 의미합니다.예시로 우리가 카페를 가서 어떤 메뉴가 있는지 알 수 있게해주는 메뉴판 같은 것입니다.

  • 서버가 리소스 전달을 위한 메뉴판, 즉 API를 구축해놓아야 클라이언트가 이를 활용할 수 있습니다.

보통 인터넷에 있는 데이터를 요청할 때에는 HTTP라는 프로토콜을 사용하며, 주소(URL, URI)를 통해 접근할 수 있게 됩니다.
파라미터를 사용할 시에는 ?와 &를 사용해야합니다.


  • HTTP요청에는 CRUD 각각의 행동과 일치하는 HTTP 메서드의 종류가 존재합니다.

    GET, POST, PUT(또는 PATCH), DELETE

요청적절한 메소드
조회(Read)GET
추가(Create)POST
갱신(Update)PUT or PATCH
삭제(Delete)DELETE
profile
프론트엔드 개발자 안윤경입니다

0개의 댓글