Показать сообщение отдельно
Старый 23.03.2016, 17:58
cazzo вне форума Посмотреть профиль Отправить личное сообщение для cazzo Найти все сообщения от cazzo
  № 1  
Ответить с цитированием
cazzo

Регистрация: Mar 2016
Сообщений: 1
По умолчанию Данные от сервера (Client/Server)

Здравствуйте,
Есть два класса: Main и CustomSocket. В классе Main создается кнопка, нажав на которую отсылается запрос к серверу и получаются от него данные. Как мне эти данные заполучить в классе Main, чтобы их можно было обработать или изменить.

CustomSocket.as
Код AS3:
package {
 
import flash.errors.*;
import flash.events.*;
import flash.net.Socket;
 
public class CustomSocket extends Socket {
	public var response:String;
 
	public function CustomSocket(host:String = null, port:uint = 0) {
		super();
		configureListeners();
		if (host && port)  {
			super.connect(host, port);
		}
	}
 
	private function configureListeners():void {
		addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
		addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
		addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler);
	}
 
	public function readResponse():String {
		var str:String = readUTFBytes(bytesAvailable);
		response += str;
		return response;
	}
 
 
 
	private function ioErrorHandler(event:IOErrorEvent):void {
		trace("ioErrorHandler: " + event);
	}
 
	private function securityErrorHandler(event:SecurityErrorEvent):void {
		trace("securityErrorHandler: " + event);
	}
 
	private function socketDataHandler(event:ProgressEvent):void {
		trace("socketDataHandler: " + event);
		readResponse();
	}
}
}
Main.as
Код AS3:
package  {
	import flash.display.SimpleButton;
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.events.ProgressEvent;
 
	public class Main extends Sprite {
 
		private var socket:CustomSocket;
		private var d:String;
		public function Main() {
 
			var up:Sprite = new Sprite();			
			up.graphics.lineStyle(1, 0x000000);
			up.graphics.beginFill(0xCCFF00);
			up.graphics.drawRect(0,0,50,20);
 
			var over:Sprite = new Sprite();
			over.graphics.lineStyle(1, 0x000000);
			over.graphics.beginFill(0x00CCFF);
			over.graphics.drawRect(0,0,50,20);
 
			//create button
			var button:SimpleButton = new SimpleButton(up,over,over,up);
			addChild(button);
			button.addEventListener(MouseEvent.CLICK, sata);
		}
 
		private function sata(event:MouseEvent):void
		{
			socket = new CustomSocket("127.0.0.1", 9999);
			socket.flush();
 
		}
 
	}
}
Спасибо.