¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
Trad by MaF
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
Se connecter a un serveur de xmlsocket
Dans ce tuto vous apprendrez a vous connecter a un serveur de socket XML pour recevoir et envoyer des données.
Créer un nouveau document fla nommer le SoketTutorial.fla
Dans le panneau action (F9)
ActionScript Code:
Var mySocket :XMLSocket = new MLSocket ();
//création de l’obj XMLSocket
Ne vous laissez pas avoir par son nom, L’obj XMLSocket non seulement peut utiliser des donnée formaté XML mais également tous les données sous forme texte
Dessiner un bouton sur la scène qui servira a envoyer les message au serveur le nommer conncetBtn
Suite du code :
ActionScript Code:
connectBtn.addEventListener(MouseEvent.CLICK, SocketConnect);
//event au Clic sur le bouton appel de SocketConnect() ; la function SocketConnect
ActionScript Code:
function SocketConnect(event:MouseEvent):void {
mysocket.addEventListener(Event.CONNECT, connectHandler);
//event déclenché après une connexion au serveur ait été établi
mysocket.addEventListener(Event.CLOSE, closeHandler);
//event déclenché après la fermeture de la connexion au serveur
mysocket.addEventListener(DataEvent.DATA, dataHandler);
//event déclenché a la reception de data du serveur.
mysocket.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
//déclenché lors de l’erreur d’envoi ou de réception
mysocket.connect("localhost", 10000);
//connexion du socket au serveur sur le port 10000 (blabla serveur)
}
• Ajoutons la fonction connectHandler appelé lorsque la connexion est établi (Event.CONNECT)
ActionScript Code:
function connectHandler(event:Event):void {
// trace("Connected to Server");
}
• Définissons la fonction ioErrorHandler en cas d’erreur d’échec lors de la connexion (ici on met juste une alerte dans le débuguer)
ActionScript Code:
function ioErrorHandler(event:IOErrorEvent):void { trace("Error: " + event);}
• Function appelé lors de la fermeture de la connexion closeHandler
ActionScript Code:
function closeHandler(event:Event):void {
trace("Disconnected");
}
• dataHandler(), function appelée lors de la réception de data:
ActionScript Code:
function dataHandler(event:DataEvent):void {
trace("Data: " + event.data);
}
Maintenant que nous avons mis en place un connexion basic, nous pouvons recevoir et lire les data envoyer par le serveur : dataHandler() voyons comment envoyer des data au serveur
• Ajoutez le code qui suit dans la procédure connectHandler():
ActionScript Code:
function connectHandler(event:Event):void {
trace("Connected to Server");mysocket.send("Hello");
}
Une fois connecter on envoi « Hello » au serveur via la méthode send de l’objet XMLSocket
En cas d’echec la function
ioErrorHandler() sera appellé
Nous pouvons egalement envoyer un obj xml qui sera converti en string
J'ai testé avec blablaserveur un serveur de socket de démo d'un tuto developpez.com, ca marche mais c'est heu comment dire "limité" comme démo, on dois pouvoir améliorer ça (code et explications)
Il y a quelques semaines en jouant avec AS3.0 j'ai commencer un client chat flash en AS3.0 (socket binaire) il est pas très avancé mais fonctionne.
Maf