Modulo Adobe Flash cs5 Parte6 Comunicacao Com o Servidor1598452420
Modulo Adobe Flash cs5 Parte6 Comunicacao Com o Servidor1598452420
Modulo Adobe Flash cs5 Parte6 Comunicacao Com o Servidor1598452420
MÓDULO
07
www.ginead.com.br
1
Programação ActionScript com Flash CS5
AVISO DE RESPONSABILIDADE
2
Programação ActionScript com Flash CS5
3
Programação ActionScript com Flash CS5
Unidade 7
Comunicação com o Servidor
7.1 Solicitar, Receber e Enviar Dados para um Servidor
através de AMF.
AMF (action message format) é uma forma de comunicação entre o Flash player e
um servidor remoto. AMF codifica chamadas remotas a procedimentos (métodos
em classes remotas) que é compactada em uma representação binária e enviada
através de HTTP/HTTPS ou RTMP/RTMPS (no caso do Flash Media Server).
Este formato é mais rápido que XML e troca de dados através de Strings (como
URLLoader ou URLVariables). AMF, na verdade, também é mais rápido que
outros métodos, como Ajax [http://www.jamesward.org/census].
Para utilizar AMF é preciso ter instalado, no servidor, uma biblioteca que serialize
e deserialize os dados. No caso do php, utiliza-se a biblioteca amfphp
[http://www.amfphp.org], que utiliza o formato AMF3.
Além da excelente performance, o uso de AMF traz um benefício adicional da
portabilidade, pois é possível alterar os métodos remotos (até mesmo o próprio
servidor) sem maiores prejuízos ao código.
4
Programação ActionScript com Flash CS5
import flash.net.ObjectEncoding;
import flash.net.NetConnection;
import flash.net.Responder;
10- Declare uma variável pública do tipo NetConnection (abre uma comunicação
com o servidor).
public var service:NetConnection =
new NetConnection();
11- No construtor, execute o método connect e indique o endereço do arquivo
gateway.php.
service.connect("/amfphp/gateway.php");
12- Execute o método call deste NetConnection. Passe como parâmetros o método
remoto que deseja executar e uma instância de Responder, que vai definir os
comportamentos padrão para sucesso e falha no recebimento da resposta.
service.call("OlaMundo.Ola.digaOi",
new Responder(resultHandler, faultHandler));
13- Crie um método para o caso de sucesso no recebimento dos dados.
public function resultHandler(result:String):void {
trace(result);
}
14- Crie um método para o caso de falha no recebimento dos dados.
public function faultHandler(fault:String):void {
trace(fault);
}
15- Compile.
5
Programação ActionScript com Flash CS5
6
Programação ActionScript com Flash CS5
import flash.net.FileReference;
import flash.events.Event;
import flash.net.URLRequest;
import flash.events.MouseEvent;
import fl.controls.Button;
7
Programação ActionScript com Flash CS5
8
Programação ActionScript com Flash CS5
9
Programação ActionScript com Flash CS5
Próximos Passos
Nesta unidade estudamos como receber e fazer o envio de dados para um servidor
e também como enviar arquivos. Estas são duas ações bastante comuns. O AS3
implementa mecanismos para desempenhar estas funções em que seja necessário
contato com os códigos remotos. Apenas é preciso fornecer a localização deles.
Este modelo garante bastante independência, pois permite liberdade de escolher
que tipo de tecnologia de servidor utilizar.
Na próxima unidade será iniciada a discussão da orientação a objetos. Até o
presente ponto, sabemos apenas como definir um pacote, classes e métodos e
propriedades públicas. Com um pouco mais de informação seremos capazes de
construir projetos maiores.
10
Semeando Conhecimento