| Paquete | flash.net |
| Clase | public class XMLSocket |
| Herencia | XMLSocket EventDispatcher Object |
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
El método XMLSocket.connect() sólo se puede conectar con números de puerto TCP superiores o iguales a 1024. Como consecuencia de esta limitación, el servidor daemons que se comunica con el objeto XMLSocket también debe asignarse a números de puerto superiores o iguales a 1024. Los números de puerto inferiores a 1024 suelen utilizarse para servicios del sistema como FTP, Telnet y HTTP, por lo que los objetos XMLSocket no pueden utilizar estos puertos por razones de seguridad. La restricción de número de puerto limita la posibilidad de que se pueda acceder y hacer un uso indebido de estos recursos.
La configuración de un servidor para que se comunique con el objeto XMLSocket puede resultar compleja. Si la aplicación no requiere interactividad en tiempo real, utilice la clase URLLoader en vez de la clase XMLSocket. Para utilizar los métodos de la clase XMLSocket, primero debe utilizar el constructor, new XMLSocket, para crear un objeto XMLSocket.
Cuando utilice esta clase, tenga en cuenta el modelo de seguridad de Flash Player:
Para más información, consulte las siguientes secciones:
Véase también
| Propiedad | Definido por | ||
|---|---|---|---|
| connected : Boolean
[read-only]
Indica si este objeto XMLSocket está conectado actualmente.
| XMLSocket | ||
![]() | constructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
| Object | |
![]() | prototype : Object
[static]
Una referencia al objeto prototipo de una clase u objeto de función.
| Object | |
| Método | Definido por | ||
|---|---|---|---|
|
Crea un nuevo objeto XMLSocket.
| XMLSocket | ||
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un objeto de detector de eventos con un objeto EventDispatcher, de modo que el detector reciba la notificación de un evento.
| EventDispatcher | |
|
Cierra la conexión especificada por el objeto XMLSocket.
| XMLSocket | ||
|
Establece una conexión con el servidor de Internet especificado mediante el puerto TCP indicado.
| XMLSocket | ||
![]() |
Distribuye un evento en el flujo del evento.
| EventDispatcher | |
![]() |
Comprueba si el objeto EventDispatcher tiene detectores registrados para un tipo concreto de evento.
| EventDispatcher | |
![]() |
Indica si un objeto tiene definida una propiedad especificada.
| Object | |
![]() |
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
| Object | |
![]() |
Indica si existe la propiedad especificada y si es enumerable.
| Object | |
![]() |
Elimina un detector del objeto EventDispatcher.
| EventDispatcher | |
|
Convierte el objeto XML o los datos especificados en el parámetro object en una cadena y la transmite al servidor seguida de un byte cero (0).
| XMLSocket | ||
![]() |
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
| Object | |
![]() |
Devuelve la representación de cadena del objeto especificado.
| Object | |
![]() |
Devuelve el valor simple del objeto especificado.
| Object | |
![]() |
Comprueba si hay registrado un detector de eventos con este objeto EventDispatcher o con cualquiera de sus ascendientes para el tipo de evento concreto.
| EventDispatcher | |
| Evento | Resumen | Definido por | ||
|---|---|---|---|---|
![]() | Se distribuye cuando Flash Player queda seleccionado por el sistema operativo y pasa a estar activo. | EventDispatcher | ||
| Se distribuye cuando el servidor cierra la conexión de socket. | XMLSocket | |||
| Se distribuye tras realizar una llamada correcta al método XMLSocket.connect(). | XMLSocket | |||
| Se distribuye una vez enviados o recibidos datos sin formato. | XMLSocket | |||
![]() | Se distribuye cuando Flash Player deja de estar seleccionado por el sistema operativo y pasa a estar inactivo. | EventDispatcher | ||
| Se distribuye cuando se produce un error de entrada o salida que provoca que una operación de envío o recepción se realice incorrectamente. | XMLSocket | |||
| Se distribuye si la llamada al método XMLSocket.connect() intenta conectar con un servidor fuera del entorno limitado de seguridad del elemento que realiza la llamada o con un puerto inferior al 1024. | XMLSocket | |||
| connected | propiedad |
connected:Boolean [read-only]
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Indica si este objeto XMLSocket está conectado actualmente. Para comprobar si la conexión es correcta, también se puede registrar para los eventos connect y ioError.
public function get connected():Boolean
Véase también
| XMLSocket | () | constructor |
public function XMLSocket(host:String = null, port:int = 0)
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Crea un nuevo objeto XMLSocket. El objeto XMLSocket no está conectado inicialmente a ningún servidor. Debe llamar al método XMLSocket.connect() para conectar el objeto con un servidor.
host:String (default = null) — Un nombre de dominio DNS completo o una dirección IP con formato aaa.bbb.ccc.ddd. También puede especificar null para conectarse al servidor host en el que se encuentra el archivo SWF. Si el archivo SWF que realiza esta llamada se ejecuta en un navegador Web, el valor host debe pertenecer al mismo dominio que el archivo SWF.
|
|
port:int (default = 0) — El número de puerto TCP en el host utilizado para establecer una conexión. El número de puerto debe ser 1024 o superior, a no ser que se utilice un archivo de política.
|
Véase también
| close | () | método |
public function close():void
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Cierra la conexión especificada por el objeto XMLSocket. El evento close sólo se distribuye si el servidor cierra la conexión; no se distribuye al llamar al método close().
Véase también
| connect | () | método |
public function connect(host:String, port:int):void
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Establece una conexión con el servidor de Internet especificado mediante el puerto TCP indicado. De forma predeterminada, sólo es posible conectar con el puerto 1024 o superiores, a no ser que se utilice un archivo de política.
Si especifica el valor null para el parámetro host, el servidor con el que se entra en contacto es en el que reside el archivo SWF que llama a XMLSocket.connect(). Por ejemplo, si el archivo SWF se ha descargado de www.adobe.com, especificar null para el parámetro host equivaldrá a introducir la dirección IP de www.adobe.com.
En archivos SWF que se ejecuten en una versión del reproductor anterior a Flash Player 7, host debe estar en el mismo superdominio que el archivo SWF que emite esta llamada. Por ejemplo, un archivo SWF situado en www.adobe.com puede enviar o recibir variables de un archivo SWF situado en store.adobe.com porque ambos archivos se encuentran en el mismo superdominio, denominado adobe.com.
En archivos SWF de cualquier versión que se ejecuten en Flash Player 7 o posterior, host debe estar exactamente en el mismo dominio. Por ejemplo, un archivo SWF situado en www.adobe.com publicado para Flash Player 5, pero abierto en Flash Player 7 o en una versión posterior sólo puede enviar o recibir variables de archivos SWF que también se encuentren en www.adobe.com. Si desea enviar o recibir variables de un dominio diferente, puede colocar un archivo de política entre dominios en el servidor en el que se alberga el archivo SWF al que se está accediendo.
Asimismo, se puede impedir que un archivo SWF utilice este método si define el parámetro allowNetworking de las etiquetas object y embed de la página HTML que aloja el contenido SWF.
Para más información, consulte las siguientes secciones:
Parámetros
host:String — Un nombre de dominio DNS completo o una dirección IP con formato aaa.bbb.ccc.ddd. También puede especificar null para conectarse al servidor host en el que se encuentra el archivo SWF. Si el archivo SWF que realiza esta llamada se ejecuta en un navegador Web, el valor host debe pertenecer al mismo dominio que el archivo SWF.
|
|
port:int — El número de puerto TCP en el host utilizado para establecer una conexión. El número de puerto debe ser 1024 o superior, a no ser que se utilice un archivo de política.
|
securityError: — Un intento de operación de conexión con un servidor ajeno al entorno limitado de seguridad del elemento que realiza la llamada, o con un puerto inferior al 1024. Cualquiera de los dos problemas puede resolverse utilizando un archivo de política XMLSocket en el servidor. |
|
data: — Se distribuye cuando se reciben los datos sin formato. |
|
connect: — Se distribuye cuando se establece una conexión de red. |
SecurityError — Los archivos SWF locales que no son de confianza no pueden comunicarse en Internet. Puede solucionar este problema reclasificando el archivo SWF como archivo local de red o archivo de confianza.
|
|
SecurityError — No se puede especificar un puerto de socket superior a 65535.
|
Véase también
| send | () | método |
public function send(object:*):void
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Convierte el objeto XML o los datos especificados en el parámetro object en una cadena y la transmite al servidor seguida de un byte cero (0). Si object es un objeto XML, la cadena es una representación textual XML del objeto XML. La operación de envío (send) es asíncrona; se devuelve inmediatamente, pero puede que los datos se transmitan posteriormente. El método XMLSocket.send() no devuelve ningún valor que indique si los datos se han transmitido correctamente.
Si no conecta el objeto XMLSocket al servidor mediante XMLSocket.connect()), la operación XMLSocket.send() generará un error.
Parámetros
object:* — Un objeto XML u otros datos que se van a transmitir al servidor.
|
IOError — El objeto XMLSocket no está conectado al servidor.
|
Véase también
| close | Evento |
flash.events.Event
flash.events.Event.CLOSE
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Se distribuye cuando el servidor cierra la conexión de socket. El evento close sólo se distribuye si el servidor cierra la conexión; no se distribuye al llamar al método XMLSocket.close().
type de un objeto de evento close.
Este evento tiene las propiedades siguientes:
| Propiedad | Valor |
|---|---|
bubbles | false |
cancelable | false; no hay ningún comportamiento predeterminado que cancelar. |
currentTarget | El objeto que procesa de forma activa el objeto de evento con un detector de eventos. |
target | Objeto cuya conexión se ha cerrado. |
| connect | Evento |
flash.events.Event
flash.events.Event.CONNECT
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Se distribuye tras realizar una llamada correcta al método XMLSocket.connect().
type de un objeto de evento connect.
Este evento tiene las propiedades siguientes:
| Propiedad | Valor |
|---|---|
bubbles | false |
cancelable | false; no hay ningún comportamiento predeterminado que cancelar. |
currentTarget | El objeto que procesa de forma activa el objeto de evento con un detector de eventos. |
target | Objeto Socket o XMLSocket que ha establecido una conexión de red. |
| data | Evento |
flash.events.DataEvent
flash.events.DataEvent.DATA
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Se distribuye una vez enviados o recibidos datos sin formato.
Define el valor de la propiedadtype de un objeto de evento data.
Este evento tiene las propiedades siguientes:
| Propiedad | Valor |
|---|---|
bubbles | false |
cancelable | false; no hay ningún comportamiento predeterminado que cancelar. |
currentTarget | El objeto que procesa de forma activa el objeto de evento con un detector de eventos. |
data | Datos cargados en Flash Player. |
target | Objeto XMLSocket que recibe los datos. |
| ioError | Evento |
flash.events.IOErrorEvent
flash.events.IOErrorEvent.IO_ERROR
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Se distribuye cuando se produce un error de entrada o salida que provoca que una operación de envío o recepción se realice incorrectamente.
Define el valor de la propiedadtype de un objeto de evento ioError.
Este evento tiene las propiedades siguientes:
| Propiedad | Valor |
|---|---|
bubbles | false |
cancelable | false; no hay ningún comportamiento predeterminado que cancelar. |
currentTarget | El objeto que procesa de forma activa el objeto de evento con un detector de eventos. |
target | El objeto de red en el que se produce el error de entrada/salida. |
text | Texto que se mostrará como mensaje de error. |
| securityError | Evento |
flash.events.SecurityErrorEvent
flash.events.SecurityErrorEvent.SECURITY_ERROR
| Versión del lenguaje: | ActionScript 3.0 |
| Versión del reproductor: | Flash Player 9 |
Se distribuye si la llamada al método XMLSocket.connect() intenta conectar con un servidor fuera del entorno limitado de seguridad del elemento que realiza la llamada o con un puerto inferior al 1024.
SecurityErrorEvent.SECURITY_ERROR define el valor de la propiedad type de un objeto de evento securityError.
Este evento tiene las propiedades siguientes:
| Propiedad | Valor |
|---|---|
bubbles | false |
cancelable | false; no hay ningún comportamiento predeterminado que cancelar. |
currentTarget | El objeto que procesa de forma activa el objeto de evento con un detector de eventos. |
target | El objeto de red que informa sobre le error de seguridad. |
text | Texto que se mostrará como mensaje de error. |
Véase también
socket y transfiere socket a ConfigureListeners() (descrito a continuación). Posteriormente, llama al método connect() de XMLSocket utilizando el nombre de host "localhost" y el número de puerto 8080.configureListeners(), que añade detectores para cada uno de los eventos XMLSocket admitidos:
closeHandler(): detecta el evento close, que se distribuye una vez cerrada la conexión de red.connectHandler(): detecta el evento connect, que se distribuye al establecer la conexión de red.dataHandler(): detecta eventos data, que se distribuyen cada vez que XMLSocket recibe nuevos datos.progressHandler(): detecta eventos progress, que se distribuyen cuando se realiza una llamada a send() y durante el proceso de envío.securityErrorHandler(): detecta eventos securityError, que se distribuirían si se intentase acceder al objeto XMLSocket con al configuración de seguridad de reproducción local errónea o si se utiliza un puerto inferior a 1024.ioErrorHandler(): detecta eventos ioError, que se producirían sólo si hay algún error en el envío y la recepción de los datos.Notas:
package {
import flash.display.Sprite;
import flash.events.*;
import flash.net.XMLSocket;
public class XMLSocketExample extends Sprite {
private var hostName:String = "localhost";
private var port:uint = 8080;
private var socket:XMLSocket;
public function XMLSocketExample() {
socket = new XMLSocket();
configureListeners(socket);
socket.connect(hostName, port);
}
public function send(data:Object):void {
socket.send(data);
}
private function configureListeners(dispatcher:IEventDispatcher):void {
dispatcher.addEventListener(Event.CLOSE, closeHandler);
dispatcher.addEventListener(Event.CONNECT, connectHandler);
dispatcher.addEventListener(DataEvent.DATA, dataHandler);
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
}
private function closeHandler(event:Event):void {
trace("closeHandler: " + event);
}
private function connectHandler(event:Event):void {
trace("connectHandler: " + event);
}
private function dataHandler(event:DataEvent):void {
trace("dataHandler: " + event);
}
private function ioErrorHandler(event:IOErrorEvent):void {
trace("ioErrorHandler: " + event);
}
private function progressHandler(event:ProgressEvent):void {
trace("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
}
private function securityErrorHandler(event:SecurityErrorEvent):void {
trace("securityErrorHandler: " + event);
}
}
}
Enviarme un mensaje de correo electrónico cuando se añadan comentarios a esta página | Informe de comentarios
Página actual: http://livedocs.adobe.com/flash/9.0_es/ActionScriptLangRefV3/flash/net/XMLSocket.html