backend

[Ajax] Ajax

버리야 2007. 3. 4. 13:52
반응형
자바지기 오픈 스터디 Ajax(Asynchronous JavaScript + XML) 기본 중에 좋은 자료가 있어서...


  동기/비동기 통신 매커니즘



  • 기존동기통신 방식(classic web application model - synchronous) 에 대해선 잘 알고 있으리라 생각된다.
    Browser에서 user에 의해 request가 발생하면, server에서 요청을 처리한 후 reponse를 돌려주고, 이 결과를 Browser에 display하는 방식으로써, 화면이 깜빡이며 처리결과를 출력하게되는데 화면전환을 하지않도록 하기 위해 대체로 <iframe/>을 많이 사용하는 추세이다.
  • Ajax비동기 통신 방식(Ajax web application model - asynchronous)
    Browser에서 일어난 input이란 event에 대해, Ajax Engine이 요청을 Catch해서 server로 request를 전달해주고, server가 처리한 response를 보내주면 Ajax Engine이 받아 Browser로 출력해주는 방식이다. 이때, Ajax Engine이 서버와 통신하는 요소기술로 javascipt사용되기때문에 화면전환이 없는것이다.

  Web Application Model 형태



기존 Web App. model
은 user가 'HTTP Request'를 발생시키면 서버에서 처리한 후, HTML+CSS data의 형태로 Browser에 return해주어 화면에 display 하게하는 반면,
Ajax Web App. model 은 user가 발생시킨 event가 javascript를 call하면, Ajax Engine이 이를 catch하여 서버측에 HTTP request를 보내고, 서버는 결과를 XML data형태로 만들어 Ajax Engine에게 보내준다. 그러면 Ajax Engine은 이 데이터에 HTML+CSS를 붙여 화면에 display하는 것이다.
이때, 결과를 반드시 XML data만 사용하는건 아니고, text/csv/json의 형태로도 가능하다.
반응형