Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
W W W. D O M I N A N D OT I .CO M . B R
AJAX - Histrico
Web 1.0
Pginas dinmicas
CGI (Perl, C), ASP, JSP, PHP
Aplicaes web baseadas em pginas
W W W. D O M I N A N D OT I .CO M . B R
W W W. D O M I N A N D OT I .CO M . B R
O que AJAX ?
AJAX = Asynchronous JavaScript and XML
Modelo de programao ...
para aplicaes web ricas, baseado em JavaScript
executado no browser e em padres W3C
... no qual o modelo da pgina manipulado por meio de
cdigo javascript
... no qual a pgina atualizada a qualquer momento com
dados obtidos de um servidor
W W W. D O M I N A N D OT I .CO M . B R
O que no AJAX?
Apenas o uso de HTML dinmico (DHTML)
W W W. D O M I N A N D OT I .CO M . B R
browser
Servidor
UI
2
http request
servidor
web
BD
4
browser atualiza o
contedo da janela com
o novo html do servidor
Dados so
enviados de volta
para o browser
6
W W W. D O M I N A N D OT I .CO M . B R
Ao do usurio
Ao do usurio
1
Ao do usurio
tempo
4
servidor
3
Processamento do servidor
Processamento do Servidor
W W W. D O M I N A N D OT I .CO M . B R
UI
browser
browser
UI
Chamadas
JavaScript
Servidor
request
Ajax
engine
servidor
Web
response
(XML/JSON)
Banco
de
dados
Gerenciamento dos
dados dinmicos
Professor Marcelo Pacote - @professorpacote
W W W. D O M I N A N D OT I .CO M . B R
time
servidor
Processamento no servidor
W W W. D O M I N A N D OT I .CO M . B R
Exemplos de uso
Gmail
Google Maps
Google Suggest
10
W W W. D O M I N A N D OT I .CO M . B R
11
W W W. D O M I N A N D OT I .CO M . B R
12
W W W. D O M I N A N D OT I .CO M . B R
13
W W W. D O M I N A N D OT I .CO M . B R
Ajax
Ajax um modelo para construir aplicaes no browser.
O modelo consiste em:
A
controle
JavaScript
B
dados
XML ou outros formatos
(e.g. JSON)
C
apresentao
API DOM
HTML e CSS
14
W W W. D O M I N A N D OT I .CO M . B R
Vantagens
Aplicaes com menor tempo de resposta em relao a
arquiteturas clssicas.
15
W W W. D O M I N A N D OT I .CO M . B R
Desvantagens
Quebra do modelo de navegao da Web
16
W W W. D O M I N A N D OT I .CO M . B R
17
W W W. D O M I N A N D OT I .CO M . B R
Implementando AJAX
O que dispara uma requisio AJAX?
Um evento JavaScript sobre qualquer elemento da pgina
(onblur, onclick, etc.)
Como o servidor processa uma requisio AJAX?
O servidor no faz distino de uma requisio AJAX de uma
outra requisio HTML (URL, link, formulrio). Dados so
enviados normalmente via GET ou POST
Que cdigo executado quando os dados do AJAX retornam
para o cliente?
Uma funo JavaScript, definida pela propriedade
onreadystatechange no objeto XmlHttpRequest.
Professor Marcelo Pacote - @professorpacote
18
W W W. D O M I N A N D OT I .CO M . B R
Implementao
<valid>
false
</valid>
19
W W W. D O M I N A N D OT I .CO M . B R
type="text"
size="20"
id=login"
name="id"
onkeyup="validarLogin()">
20
W W W. D O M I N A N D OT I .CO M . B R
sendRequest(url);
}
21
W W W. D O M I N A N D OT I .CO M . B R
}
Professor Marcelo Pacote - @professorpacote
22
W W W. D O M I N A N D OT I .CO M . B R
return xhr;
23
W W W. D O M I N A N D OT I .CO M . B R
24
W W W. D O M I N A N D OT I .CO M . B R
25
W W W. D O M I N A N D OT I .CO M . B R
26
W W W. D O M I N A N D OT I .CO M . B R
27
W W W. D O M I N A N D OT I .CO M . B R
28
W W W. D O M I N A N D OT I .CO M . B R
29
W W W. D O M I N A N D OT I .CO M . B R
30
W W W. D O M I N A N D OT I .CO M . B R
( ) Sempre que o usurio pressionar uma tecla nos campos nome e hora
do formulrio de nome formulario, ser apresentada uma janela pop-up ao
usurio com a expresso: Seu browser suporta Ajax!
( ) Um novo pedido HTTP ser enviado pelo browser ao servidor HTTP que
enviou a pgina sempre que a funo ajaxFunction for executada com
sucesso.
31
W W W. D O M I N A N D OT I .CO M . B R
32
W W W. D O M I N A N D OT I .CO M . B R
33
W W W. D O M I N A N D OT I .CO M . B R
34
W W W. D O M I N A N D OT I .CO M . B R
a) I
b) II
c) III
d) II e III
e) todas as afirmativas
35
W W W. D O M I N A N D OT I .CO M . B R
36
W W W. D O M I N A N D OT I .CO M . B R
[2] b
[3] e
[4] ee
[5] c
[6] ee
[7] e
[8] errado
37
W W W. D O M I N A N D OT I .CO M . B R
Exerccios Complementares
Professor Marcelo Pacote @professorpacote
W W W. D O M I N A N D OT I .CO M . B R
W W W. D O M I N A N D OT I .CO M . B R
39
W W W. D O M I N A N D OT I .CO M . B R
40
W W W. D O M I N A N D OT I .CO M . B R
41
W W W. D O M I N A N D OT I .CO M . B R
42
W W W. D O M I N A N D OT I .CO M . B R
c) XMLHttpRequest.
d) DOMParser.
e) setRequestReader.
43
W W W. D O M I N A N D OT I .CO M . B R
44
W W W. D O M I N A N D OT I .CO M . B R
45
W W W. D O M I N A N D OT I .CO M . B R
46
W W W. D O M I N A N D OT I .CO M . B R
47
W W W. D O M I N A N D OT I .CO M . B R
Gabarito
[1] e
[2] c
[3] c
[4] c
[5] e
[6] certo
48
W W W. D O M I N A N D OT I .CO M . B R