2013년 10월 27일 일요일

Ajax 기반 웹 애플리케이션 의 다양한 클라이언트- 서버 통신 메카니즘

클라이언트와 서버사이의 통신계층

- 구현을 위해서, 브라우저에서 제공하는 다양한 통신 메카니즘+ 메카니즘의 장단점 이해요구

- 통신요구 사항과 그에 맞는 메커니즘을 올바로 매치하는 방법 학습가능
- 통신계층 만드는 방법의 이해 요구

ex) 비동기 javascript 및 XML(ajax)기반 웹 애플리케이션의 핵심이 되는 부분이 여기에 속함

▶ Ajax 방식으로 작업하는 방법
- Ajax 기반  웹 app는  서버에서 작동하는 app에대한 클라이언트 역할을 함.
- Ajax 기반 웹 app는  서버로 데이터를 앞뒤로 보내며 통신 기능을 집중적으로 사용하는 app이다
- 데이터 전송 기능을 제공할 메카니즘이 필요하며, 메커니즘은 최대한 가볍고 안전해야함
- 전송을 목적으로 사용하는 오브젝트 XHR(XMLHttpRequest)가 브라우저에 들어있음
- 실제로 가벼운 XHR은 페이지를 검색한 서버로 한정되는 요청을 생성함
- XHR은 사이트간 스크립팅 문제를 제거하며, 텍스트만 전달가능


▶ XHR 오브젝트
- 클라이언트 웹 app는 XHR오브젝트를 사용하여  서버로 정보를 보내고, 서버에서 데이터를 끌어올수있다.

▶ 어떤유형의 HTTP 메소드라도 사용 가능함
- 현재 도입된 대부분의 일반적인 서버 아키텍쳐는 REST 원리를 기반으로함
(GET,PUT,POST 및 DELETE 요청을 사용해야함)
- 클라이언트와 서버간 통신의 핵심이라고 할수있는 XHR오브젝트의 사용으로 RESTful 서버 아키텍처를 사용할수 있음

▶ 완료시 알림
- XHR 오브젝트는 생성부터 응답이 완전이 로드되기까지 여러 가지 상태에서 존재할수있음
- 각각의 상태 변화 시, 이벤트가 실행되고 앞으로의 상태 변화 시 호출할 콜백을 정의 할 수 있다.
- 이 이벤트 핸들러를 통해 서버에서 패치된 데이터에 의존하는 코드가 해당 데이터를 사용 할 수 있을때 실행되도록 할수 있음

▶페이지 히스토리에 개입없음
- XHR 호출은 페이지의 히스토리 오브젝트에 반영되지 않으므로 브라우저 앞뒤 동작의 일반적인 용도에서 벗어나지 않는다.

댓글 없음:

댓글 쓰기