Ajax (Asynchronous JavaScript and XML)
Ѩغѹ ѡɳС÷ҧҹẺ Client - Server ١ҹҧѡɳСõԴüҹҧ Web browser 觡÷ӧҹẺ ա÷ӧҹ Client ͧеͧâźҧҧҡ Server ѧ鹡ŴСê˹Ҩ 觷ա§ ֧繼÷ҧҹͧ Client ͧش͡ŴСê˹Ҩ 觶繡÷ҧҹջԷҾ
Ajax
Ajax ͧ͢¹繪ͧ͢ҷ㹡 繪شͧյҧ Ajax Ҩҡ Asynchronous JavaScript? And XML; ¶֧÷ӧҹѹͧ JavaScript? XML Ẻ Asynchronous ѡ÷ҧҹ 2 update ˹ҨẺҧǹ СõԴáѺ Server ѡ Asynchronous ͧش÷ҧҹ ͡ûżŨҡ Server ֧ŴСê˹Ҩ ͧҧ Client ա Ajax ¡ҧ user browser Ѻ server öҧҹͧ Client Դѧ Server ֧ŴСê˹Ҩͷ ѧ鹼öҹ application ҧջԷҾҡ
AJAX ֧㹵Ǣͧѹͧ 繡ù ѹ JavaScript?, DHTML, XML, Css, Dom XMLHTTPRequest
Ajax engine ˹ҷ繵ǡҧҧ client server й client request᷹ HTTP request ѧ server µç client JavaScript? call ѧ Ajax engine Ŵŷ user ͧ ҡ Ajax engine ͧâ㹡õͺʹͧ user Ajax engine request ѧ server XML
õǶ֧յҧ ǹСͺͧ Ajax
- HTML/XHTML 㹡èѴʴ
- CSS ٻẺèѴ XHTML
- Document Object Model (DOM) Ѻ dynamic display and interaction
- XML ٻẺš¹ҵ
- XSLT Ѻ ŧ XML XHTML
- XMLHTTPRequest Ѻ asynchronous data retrieval
- JavaScript? 㹡ҹ Ajax engine
ǹСͺ繢鹾鹰ҹҴ Ajax HTML/XHTML DOM JavaScript? XHTML
ѵԤ
㹪ǧáͧþѲ ͻ 1997 Component áԴ鹷ҧ Client ١¹·Ѳ Outlook Web Access 觵Ҷ١ǹ˹觢ͧ Internet Explorer 5.0 蹡ͨش鹷ѡ÷ӧҹẺ Ajax 㹻 2005 Google õԴẺ Asynchronous ҡҹѡѺ Ajax ѹҧ ÷ӧҹẺ Client - Server ١ҹ繨ӹǹҡ õԴ͡Ѻҹŷ Server ͡ԡ÷ҧԹ Google 繼ŧعŧçҧ˹ѡ 㹾ѲС÷ͺ Ajax ֧ѧࡵ żԵ˭ͧ Google 㹪ǧ鹻 2005 ֧繡ù Ajax һءҹ Gmail, GoogleMap?, GoogleSuggest? GoogleGroup? 繵
Ңͧѭ
ͧҡ;प蹷ҹ㹻Ѩغѹ ѡ÷ӧҹԴ٭зѾҡâͧ㹡ͤ¡÷ӧҹҧ ͧش ѧ鹡÷ӧҹ֧ͧҧͧ ѡôѧǤ
1."Click, wait, and refresh" user interaction paradigm ÷ͺʹͧ͡÷ӧҹͧ ¨з˹纷ʴ㹢й 价ӡ HTTP request Ѻѧ server ᷹ 觷ö㹢й ͡ҡͤ server ӡû稡˹ HTML Ѻѧ ͨҡ鹺êʴ˹ HTML ˹ йͧöҹ ժǧҢͧشͤҹҹѺûżŢͧ Server Сê˹ HTML ˹ 觷ջԷҾԧ Dynamic ͧ÷ӧҹ;प
2.Synchronous "request/response" communication mode ÷ӡͧ͢ server ͺʹͧСͧͷͧ server ö觢Һͧ͢㹢й 觶繡õԴẺȷҧ ǧá request/response Ẻ synchronous ÷ӧҹẺҹѧҧѺ Server ԴҪ㹡÷ӧҹա ͡ҡä¡õͺʹͧѺҨҡ server server ż
ºº÷ӧҹẺ Ѻ Ajax
çҧͧ Ajax
ͧͧçҧҧ Software ͧ Ajax ҧҡ;प㹷ءѹ ͧҡա engine ҧ client
Ajax architecture
ҡٻ Ajax engine ҧ User Interface Ѻ server 觨ͧ繡÷ӧҹ Client ÷ӧҹҧͧ ¡ Ajax engine ǹ ᷹ͧ˹纨ҡ server µç ШçҧẺ XML 㹡â¢ҧ server Ѻ Ajax engine ͺӡͧ͢Ũҡ server ͡ҡ Ajax engine ͧӡõԴ plug-in ö download Ajax ǤԴ㹡ѭҡشЧѡ÷ӧҹͧ
÷ӧҹͧ Ajax
AJAX ЪŴõԴҧ Client Ѻ Server 㹡Ŵ˹纹 ŴŨҡ AJAX engine ᷹ͧ͢Ũҡ server µç ѧ Ajax з˹ҷ駡 render ǹԴ͡ѺеԴѧ server AJAX engine حҵáзӵҧ web application Ẻ Asynchronous ͤ㹡õԴѧ server ͧ ѧ鹼辺Ѻ˹Ң ա ͧ͡Ŵŵҧ ҡ server
"Partial screen update" replaces the "click, wait, and refresh" user interaction model
update ˹Ҩͺҧǹ ᷹ "click, wait, and refresh" ҧԴ ÷ӧҹẺõʹâͧ user interface ͧʴ˹纷ͧѧ server ж١Ѵ繢Ͷ١ update شЧѡͧ user interface ֧Դ ˹纹ѧ١ʴöҹ »ȨҡشЧѡ÷ӧҹͧ update ˹纺ҧǹö˹纷ӧҹ ֧ ҧ¡÷ӧҹ繵ͧشЧѡ
Asynchronous communication replaces "synchronous request/response model
õԴẺ Asynchronous ᷹ synchronous request/response model Ѻ Ajax request/response зẺ asynchronous 觤͡õԴáѺ server Ẻ·ӡŴõԴҧ Ѻ server ŷͼöҹ;प㹢з client ӡͧ͢Ũҡ server ͧѧ(÷ӧҹẺѹͧ 2 ҡ ˹ҹѺѧҹ) ͢ԹҧҶ֧ update ˹ user interface ͧâ ǹ˹ user interface ͧ update ʴǹ鹵
Ajax Model: Partial UI updates and asynchronous communications
ٻ÷ӧҹẺ Asynchronous С update ˹Ẻҧǹ ÷ӧҹͧջԷҾҡ
ʹբͧ Ajax
- ͺʹͧͼҧǴͧҡ update Ẻҧǹ
- ͧشͤ¡ûŢͧ server ͧҡõԴẺ Asynchronous
- ͧѺѺѡö JavaScript?
- ûżŷ Server դǴǢͧҡûżŷ Server Ŵŧ
- ͧӡõԴ Plugs-in
- ִԴѺ Platform ҷ㹡¹
- 繢ͧѡѲ;प蹤 蹤ͷءԷҾѲ;प蹵ǹ
Author
: http://wiki.nectec.or.th/giti/Knowledge/Ajax
|