Pacchetto | flash.net |
Classe | public class Socket |
Ereditarietà | Socket EventDispatcher Object |
Implementa | IDataInput, IDataOutput |
Sottoclassi | SecureSocket |
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
La classe Socket è utile nelle operazioni con i server che utilizzano protocolli binari.
Per utilizzare i metodi della classe Socket, come prima cosa utilizzate la funzione di costruzione, new Socket
, per creare un oggetto Socket.
Un socket trasmette e riceve i dati in modo asincrono.
In alcuni sistemi operativi, flush() viene chiamato automaticamente tra i fotogrammi di esecuzione, ma in altri sistemi operativi, ad esempio Windows, i dati non vengono mai inviati a meno che flush()
non venga chiamato esplicitamente. Per fare in modo che l'applicazione si comporti in maniera affidabile in tutti i sistemi operativi, è opportuno chiamare il metodo flush()
dopo aver scritto ogni messaggio (o gruppo di dati correlati) sul socket.
In Adobe AIR, gli oggetti Socket vengono creati anche quando un ServerSocket in ascolto riceve una connessione da un processo esterno. Il Socket che rappresenta la connessione viene inviato in un ServerSocketConnectEvent. La vostra applicazione deve gestire un riferimento a questo oggetto Socket. In caso contrario, l'oggetto Socket risulta idoneo per il processo di garbage collection e potrebbe essere distrutto dal runtime senza alcun avviso.
Il contenuto SWF eseguito nella sandbox di sicurezza locale con file system non possono utilizzare i socket.
I file dei criteri socket sull'host di destinazione specificano gli host da cui i file SWF possono effettuare connessioni socket e le porte a cui tali connessioni possono essere effettuate. I requisiti di sicurezza relativi ai file dei criteri per i socket sono diventati più rigidi nelle ultime versioni di Flash Player. In tutte le versioni di Flash Player, Adobe consiglia di utilizzare un file dei criteri per i socket; in alcune circostanze tale file è obbligatorio. Di conseguenza, se utilizzate oggetti Socket, accertatevi che l'host di destinazione fornisca un file di criteri socket, se necessario.
Nell'elenco seguente sono riepilogati i requisiti relativi ai file dei criteri per i socket nelle diverse versioni di Flash Player:
- In Flash Player 9.0.124.0 e versioni successive, è necessario un file di criteri socket per qualsiasi connessione socket. Vale a dire che un file dei criteri per i socket sull'host di destinazione è necessario indipendentemente dalla porta a cui vi collegate, anche se vi collegate a una porta sullo stesso host che fornisce il file SWF.
- In Flash Player versioni 9.0.115.0 e precedenti, se desiderate collegavi a un numero di porta inferiore a 1024 o se desiderate collegarvi a un host diverso da quello che fornisce il file SWF, è necessario che sull'host di destinazione sia presente un file dei criteri per i socket.
- In Flash Player 9.0.115.0, anche se non è necessario un file dei criteri per i socket, viene visualizzato un avviso quando utilizzate Flash Debug Player se l'host di destinazione non fornisce un file dei criteri per i socket.
- In AIR, non è necessario un file di criteri socket per il contenuto in esecuzione nella sandbox di sicurezza dell'applicazione. I file di criteri socket sono necessari per qualsiasi connessione stabilita dal contenuto eseguito all'esterno della sandbox di sicurezza dell'applicazione AIR.
Per ulteriori informazioni sulla sicurezza, vedete l'argomento sulla sicurezza nel Centro per sviluppatori di Flash Player .
Altri esempi
Elementi API correlati
Proprietà | Definito da | ||
---|---|---|---|
bytesAvailable : uint [sola lettura]
Il numero di byte di dati disponibili per la lettura nel buffer di input. | Socket | ||
bytesPending : uint [sola lettura]
Indica il numero di byte rimanenti nel buffer di scrittura. | Socket | ||
connected : Boolean [sola lettura]
Indica se l'oggetto Socket è attualmente connesso. | Socket | ||
constructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto. | Object | ||
endian : String
Indica l'ordine di byte per i dati. | Socket | ||
localAddress : String [sola lettura]
L'indirizzo IP a cui è associato questo socket sul computer locale. | Socket | ||
localPort : int [sola lettura]
La porta a cui è associato questo socket sul computer locale. | Socket | ||
objectEncoding : uint
Controlla la versione di Action Message Format (AMF) utilizzata per scrivere o leggere un oggetto. | Socket | ||
remoteAddress : String [sola lettura]
L'indirizzo IP del computer remoto a cui è connesso questo socket. | Socket | ||
remotePort : int [sola lettura]
La porta sul computer remoto a cui è connesso questo socket. | Socket | ||
timeout : uint
Indica il numero di millisecondi di attesa di una connessione. | Socket |
Metodo | Definito da | ||
---|---|---|---|
Crea un nuovo oggetto Socket. | Socket | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento. | EventDispatcher | ||
Chiude il socket. | Socket | ||
Connette il socket all'host e alla porta specificati. | Socket | ||
Invia un evento nel flusso di eventi. | EventDispatcher | ||
Svuota tutti i dati eventualmente accumulati nel buffer di output del socket. | Socket | ||
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento. | EventDispatcher | ||
Indica se per un oggetto è definita una proprietà specifica. | Object | ||
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro. | Object | ||
Indica se la proprietà specificata esiste ed è enumerabile. | Object | ||
Legge un valore booleano dal socket. | Socket | ||
Legge un byte con segno dal socket. | Socket | ||
Legge il numero di byte di dati, specificato dal parametro lunghezza, dal socket. | Socket | ||
Legge un numero a virgola mobile e a precisione doppia IEEE 754 dal socket. | Socket | ||
Legge un numero a virgola mobile e a precisione singola IEEE 754 dal socket. | Socket | ||
Legge un numero intero a 32 bit con segno dal socket. | Socket | ||
Legge una stringa multibyte dal flusso di byte utilizzando il set di caratteri specificato. | Socket | ||
readObject():*
Legge un oggetto dal socket, codificato in formato serializzato AMF. | Socket | ||
Legge un numero intero a 16 bit con segno dal socket. | Socket | ||
Legge un byte senza segno dal socket. | Socket | ||
Legge un numero intero a 32 bit senza segno dal socket. | Socket | ||
Legge un numero intero a 16 bit senza segno dal socket. | Socket | ||
Legge una stringa UTF-8 dal socket. | Socket | ||
Legge il numero di byte di dati UTF-8, specificato dal parametro length, dal socket e restituisce una stringa. | Socket | ||
Rimuove un listener dall'oggetto EventDispatcher. | EventDispatcher | ||
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche. | Object | ||
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate. | Object | ||
Restituisce la rappresentazione in formato stringa dell'oggetto specificato. | Object | ||
Restituisce il valore di base dell'oggetto specificato. | Object | ||
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato. | EventDispatcher | ||
Scrive un valore booleano nel socket. | Socket | ||
Scrive un byte nel socket. | Socket | ||
Scrive una sequenza di byte dall'array dei byte specificato. | Socket | ||
Scrive un numero a virgola mobile e a precisione doppia IEEE 754 nel socket. | Socket | ||
Scrive un numero a virgola mobile e a precisione singola IEEE 754 nel socket. | Socket | ||
Scrive un numero intero con segno a 32 bit nel socket. | Socket | ||
Scrive una stringa multibyte dal flusso di byte utilizzando il set di caratteri specificato. | Socket | ||
Scrive un oggetto nel socket in formato serializzato AMF. | Socket | ||
Scrive un numero intero a 16 bit nel socket. | Socket | ||
Scrive un numero intero senza segno a 32 bit nel socket. | Socket | ||
Scrive i dati seguenti nel socket: un numero intero senza segno a 16 bit, che indica la lunghezza della stringa UTF-8 specificata espressa in byte, seguita dalla stringa stessa. | Socket | ||
Scrive una stringa UTF-8 nel socket. | Socket |
Evento | Riepilogo | Definito da | ||
---|---|---|---|---|
[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR ottiene lo stato di attivazione del sistema operativo ed entra nello stato attivo. | EventDispatcher | |||
Inviato quando il server chiude la connessione socket. | Socket | |||
Inviato quando è stata stabilita una connessione di rete. | Socket | |||
[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR perde l'attivazione del sistema operativo e sta entrando nello stato inattivo. | EventDispatcher | |||
Inviato quando si verifica un errore di input/output che impedisce un'operazione di invio o caricamento. | Socket | |||
Inviato quando un socket sposta dei dati dal suo buffer di scrittura al livello di trasporto della connettività | Socket | |||
Inviato se una chiamata a Socket.connect() tenta di connettersi a un server non autorizzato dalla sandbox di sicurezza del chiamante o a una porta con numero inferiore a 1024 e non è disponibile un file di criteri socket per consentire la connessione. | Socket | |||
Inviato se un socket ha ricevuto i dati. | Socket |
bytesAvailable | proprietà |
bytesAvailable:uint
[sola lettura] Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Il numero di byte di dati disponibili per la lettura nel buffer di input.
Il codice deve accedere a bytesAvailable
per garantire che siano disponibili dati sufficienti prima di tentarne la lettura con uno dei metodi read
.
Implementazione
public function get bytesAvailable():uint
bytesPending | proprietà |
bytesPending:uint
[sola lettura] Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 11, AIR 3.0 |
Indica il numero di byte rimanenti nel buffer di scrittura.
Utilizzate questa proprietà in combinazione con OutputProgressEvent. Un evento OutputProgressEvent viene generato ogni volta che vengono scritti dei dati dal buffer di scrittura alla rete. Nel gestore di eventi, potete controllare la proprietà bytesPending
per sapere quanti dati in attesa di scrittura sono rimasti nel buffer. Quando bytesPending
restituisce 0, significa che tutti i dati sono stati trasferiti dal buffer di scrittura alla rete ed è quindi possibile eseguire in sicurezza operazioni come rimuovere i gestori di eventi, azzerare i riferimenti socket, avviare il caricamento successivo in una coda, ecc.
Implementazione
public function get bytesPending():uint
Elementi API correlati
connected | proprietà |
connected:Boolean
[sola lettura] Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Indica se l'oggetto Socket è attualmente connesso. Una chiamata a questa proprietà restituisce un valore true
se l'oggetto è attualmente connesso; false
in caso contrario.
Implementazione
public function get connected():Boolean
endian | proprietà |
endian:String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Indica l'ordine dei byte per i dati. I valori possibili sono costanti della classe flash.utils.Endian: Endian.BIG_ENDIAN
o Endian.LITTLE_ENDIAN
.
Il valore predefinito è Endian.BIG_ENDIAN.
Implementazione
public function get endian():String
public function set endian(value:String):void
Elementi API correlati
localAddress | proprietà |
localPort | proprietà |
objectEncoding | proprietà |
objectEncoding:uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Controlla la versione di Action Message Format (AMF) utilizzata per scrivere o leggere un oggetto.
Implementazione
public function get objectEncoding():uint
public function set objectEncoding(value:uint):void
Elementi API correlati
remoteAddress | proprietà |
remoteAddress:String
[sola lettura] Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 2 |
L'indirizzo IP del computer remoto a cui è connesso questo socket.
Potete utilizzare questa proprietà per determinare l'indirizzo IP di un socket client inviato in un evento ServerSocketConnectEvent da un oggetto ServerSocket. Utilizzate la classe DNSResolver per convertire un indirizzo IP in un nome di dominio, se necessario.
Implementazione
public function get remoteAddress():String
Elementi API correlati
remotePort | proprietà |
remotePort:int
[sola lettura] Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 2 |
La porta sul computer remoto a cui è connesso questo socket.
Potete utilizzare questa proprietà per determinare il numero di porta di un socket client inviato in un evento ServerSocketConnectEvent da un oggetto ServerSocket.
Implementazione
public function get remotePort():int
Elementi API correlati
timeout | proprietà |
timeout:uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Indica il numero di millisecondi di attesa di una connessione.
Se la connessione non viene stabilita entro l'intervallo specificato, avrà esito negativo. Il valore predefinito è 20,000 (venti secondi).
Implementazione
public function get timeout():uint
public function set timeout(value:uint):void
Socket | () | Funzione di costruzione |
public function Socket(host:String = null, port:int = 0)
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Crea un nuovo oggetto Socket. Se non è specificato alcun parametro, viene creato un socket inizialmente disconnesso. Se sono specificati dei parametri, viene tentata una connessione all'host e alla porta specificati.
Nota: si consiglia di utilizzare la funzione di costruzione senza parametri, quindi di aggiungere eventuali listener di eventi e chiamare il metodo connect
con i parametri host
e port
. Questa sequenza garantisce che tutti i listener di eventi funzioneranno correttamente.
host:String (default = null ) — Un nome di dominio DNS completo o un indirizzo IP. Gli indirizzi IPv4 sono specificati in notazione decimale puntata, ad esempio 192.0.2.0. In Flash Player 9.0.115.0 e AIR 1.0 e versioni successive, potete specificare indirizzi IPv6 utilizzando la notazione esadecimale con due punti (:), ad esempio 2001:db8:ccc3:ffff:0:444d:555e:666f. Per connettervi al server host sul quale risiede il file SWF, potete inoltre specificare null . Se il file SWF che emette la chiamata viene eseguito in un browser Web, l'host deve trovarsi nello stesso dominio da cui ha avuto origine il file SWF.
| |
port:int (default = 0 ) — Il numero della porta TCP sull'host di destinazione utilizzato per stabilire una connessione. In Flash Player 9.0.124.0 e versioni successive, l'host di destinazione deve fornire un file dei criteri per i socket in cui è specificato che le connessioni socket sono consentite dall'host che fornisce il file SWF alla porta specificata. Nelle versioni precedenti di Flash Player, un file dei criteri per i socket è necessario solo se desiderate collegavi a un numero di porta inferiore a 1024 o se desiderate collegarvi a un host diverso da quello che fornisce il file SWF.
|
Eventi
connect: — Inviato quando è stata stabilita una connessione di rete.
| |
ioError: — Inviato quando si verifica un errore di input/output che impedisce la connessione.
| |
securityError: —
Inviato se una chiamata a Socket.connect() tenta di connettersi a un server che non fornisce un file dei criteri per i socket, oppure a un server il cui file dei criteri consente all'host chiamante di accedere alla porta specificata. Per ulteriori informazioni sui file di criteri, vedete il capitolo "Controlli del sito Web (file di criteri)" nella nella Guida per gli sviluppatori di ActionScript 3.0 e l'argomento nel Centro per sviluppatori Flash Player: Security (Sicurezza).
|
Genera
SecurityError — Questo errore si verifica nel contenuto SWF per i motivi seguenti:
|
close | () | metodo |
public function close():void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Chiude il socket. Non è possibile leggere o scrivere alcun dato dopo che è stato chiamato il metodo close()
.
L'evento close
viene inviato solo quando il server chiude la connessione; non viene inviato quando si chiama il metodo close()
.
L'oggetto Socket può essere riutilizzato chiamando nuovamente il metodo connect()
su di esso.
Genera
IOError — Impossibile chiudere il socket oppure il socket non è stato aperto.
|
connect | () | metodo |
public function connect(host:String, port:int):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Connette il socket all'host e alla porta specificati.
Se la connessione fallisce immediatamente, viene inviato un evento o generata un'eccezione: viene inviato un evento di errore se è stato specificato un host; viene generata un'eccezione se non è stato specificato alcun host. In caso contrario, lo stato della connessione viene riportato da un evento. Se il socket è già connesso, prima viene chiusa la connessione esistente.
Parametri
host:String — Il nome o l'indirizzo IP dell'host a cui connettersi. Se non è specificato alcun host, l'host contattato è quello su cui si trova il file Se non specificate un host, utilizzate un listener di eventi per determinare se la connessione è riuscita.
| |
port:int — Il numero di porta a cui connettersi.
|
Eventi
connect: — Inviato quando è stata stabilita una connessione di rete.
| |
ioError: — Inviato se è specificato un host e si verifica un errore di input/output che impedisce la connessione.
| |
securityError: — Inviato se una chiamata a Socket.connect() tenta di connettersi a un server che non fornisce un file dei criteri per i socket, oppure a un server il cui file dei criteri consente all'host chiamante di accedere alla porta specificata. Per ulteriori informazioni sui file di criteri, vedete il capitolo "Controlli del sito Web (file di criteri)" nella nella Guida per gli sviluppatori di ActionScript 3.0 e l'argomento nel Centro per sviluppatori Flash Player: Security (Sicurezza).
|
Genera
IOError — Non è stato specificato alcun host e la connessione non è riuscita.
| |
SecurityError — Questo errore si verifica nel contenuto SWF per i motivi seguenti:
|
Altri esempi
flush | () | metodo |
public function flush():void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Svuota tutti i dati eventualmente accumulati nel buffer di output del socket.
In alcuni sistemi operativi, flush() viene chiamato automaticamente tra i fotogrammi di esecuzione, ma in altri sistemi operativi, ad esempio Windows, i dati non vengono mai inviati a meno che flush()
non venga chiamato esplicitamente. Per fare in modo che l'applicazione si comporti in maniera affidabile in tutti i sistemi operativi, è opportuno chiamare il metodo flush()
dopo aver scritto ogni messaggio (o gruppo di dati correlati) sul socket.
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readBoolean | () | metodo |
public function readBoolean():Boolean
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un valore booleano dal socket. Dopo aver letto un byte singolo, il metodo restituisce true
se il byte è diverso da zero e false
in caso contrario.
Boolean — Un valore true se il byte è diverso da zero; false in caso contrario.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readByte | () | metodo |
public function readByte():int
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un byte con segno dal socket.
Restituisceint — Un valore compreso tra -128 e 127.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readBytes | () | metodo |
public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge il numero di byte di dati, specificato dal parametro lunghezza, dal socket. I byte vengono letti nell'array dei byte specificato, partendo dalla posizione indicata da offset
.
Parametri
bytes:ByteArray — L'oggetto ByteArray in cui leggere i dati.
| |
offset:uint (default = 0 ) — L'offset in corrispondenza del quale deve iniziare la lettura dei dati nell'array dei byte.
| |
length:uint (default = 0 ) — Il numero di byte da leggere. Il valore predefinito 0 avvia la lettura di tutti i dati disponibili.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readDouble | () | metodo |
public function readDouble():Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero a virgola mobile e a precisione doppia IEEE 754 dal socket.
RestituisceNumber — Un numero a virgola mobile a precisione doppia IEEE 754.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readFloat | () | metodo |
public function readFloat():Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero a virgola mobile e a precisione singola IEEE 754 dal socket.
RestituisceNumber — Un numero a virgola mobile a precisione singola IEEE 754.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readInt | () | metodo |
public function readInt():int
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero intero a 32 bit con segno dal socket.
Restituisceint — Un valore compreso tra -2147483648 e 2147483647.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readMultiByte | () | metodo |
public function readMultiByte(length:uint, charSet:String):String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge una stringa multibyte dal flusso di byte utilizzando il set di caratteri specificato.
Parametri
length:uint — Il numero di byte dal flusso di byte da leggere.
| |
charSet:String — La stringa che indica il set di caratteri da utilizzare per interpretare i byte. Le stringhe dei set di caratteri possibili comprendono "shift_jis" , "CN-GB" e "iso-8859-1" . Per un elenco completo, vedete Set di caratteri supportati.
Nota: se il valore del parametro |
String — Una stringa con codifica UTF-8.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
|
readObject | () | metodo |
public function readObject():*
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un oggetto dal socket, codificato in formato serializzato AMF.
Restituisce* — L'oggetto deserializzato.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
readShort | () | metodo |
public function readShort():int
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero intero a 16 bit con segno dal socket.
Restituisceint — Un valore compreso tra -32768 e 32767.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readUnsignedByte | () | metodo |
public function readUnsignedByte():uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un byte senza segno dal socket.
Restituisceuint — Un valore compreso tra 0 e 255.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readUnsignedInt | () | metodo |
public function readUnsignedInt():uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero intero a 32 bit senza segno dal socket.
Restituisceuint — Un valore compreso tra 0 e 4294967295.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readUnsignedShort | () | metodo |
public function readUnsignedShort():uint
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge un numero intero a 16 bit senza segno dal socket.
Restituisceuint — Un valore compreso tra 0 e 65535.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readUTF | () | metodo |
public function readUTF():String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge una stringa UTF-8 dal socket. Presume che la stringa abbia come prefisso un numero intero short senza segno che indica la lunghezza in byte.
RestituisceString — Una stringa UTF-8.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
readUTFBytes | () | metodo |
public function readUTFBytes(length:uint):String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Legge il numero di byte di dati UTF-8, specificato dal parametro length
, dal socket e restituisce una stringa.
Parametri
length:uint — Il numero di byte da leggere.
|
String — Una stringa UTF-8.
|
Genera
EOFError — Non sono disponibili dati sufficienti per la lettura.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
writeBoolean | () | metodo |
public function writeBoolean(value:Boolean):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un valore booleano nel socket. Questo metodo scrive un byte singolo, con valore 1 (true
) o 0 (false
).
Parametri
value:Boolean — Il valore da scrivere nel socket: 1 (true ) o 0 (false ).
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeByte | () | metodo |
public function writeByte(value:int):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un byte nel socket.
Parametri
value:int — Il valore da scrivere nel socket. Vengono utilizzati gli 8 bit inferiori del valore; i 24 bit superiori vengono ignorati.
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeBytes | () | metodo |
public function writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive una sequenza di byte dall'array dei byte specificato. L'operazione di scrittura inizia dalla posizione specificata da offset
.
Se omettete il parametro length
, la lunghezza predefinita 0 impone al metodo di scrivere l'intero buffer a partire da offset
.
Se omettete anche il parametro offset
, viene scritto l'intero buffer.
Parametri
bytes:ByteArray — L'oggetto ByteArray da cui scrivere i dati.
| |
offset:uint (default = 0 ) — L'offset a base zero nell'oggetto ByteArray bytes in corrispondenza del quale deve iniziare la scrittura dei dati.
| |
length:uint (default = 0 ) — Il numero di byte da scrivere. Il valore predefinito 0 specifica la scrittura dell'intero buffer, a partire dal valore specificato dal parametro offset .
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
| |
RangeError — Se offset è maggiore della lunghezza dell'oggetto ByteArray specificato in byte o se la quantità specificata di dati che devono essere scritti da offset più length supera la quantità di dati disponibili.
|
Elementi API correlati
writeDouble | () | metodo |
public function writeDouble(value:Number):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un numero a virgola mobile e a precisione doppia IEEE 754 nel socket.
Parametri
value:Number — Il valore da scrivere nel socket.
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeFloat | () | metodo |
public function writeFloat(value:Number):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un numero a virgola mobile e a precisione singola IEEE 754 nel socket.
Parametri
value:Number — Il valore da scrivere nel socket.
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeInt | () | metodo |
public function writeInt(value:int):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un numero intero con segno a 32 bit nel socket.
Parametri
value:int — Il valore da scrivere nel socket.
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeMultiByte | () | metodo |
public function writeMultiByte(value:String, charSet:String):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive una stringa multibyte dal flusso di byte utilizzando il set di caratteri specificato.
Parametri
value:String — Il valore stringa da scrivere.
| |
charSet:String — La stringa che indica il set di caratteri da utilizzare per interpretare i byte. Le stringhe dei set di caratteri possibili comprendono "shift_jis" , "CN-GB" e "iso-8859-1" . Per un elenco completo, vedete Set di caratteri supportati.
|
Elementi API correlati
writeObject | () | metodo |
public function writeObject(object:*):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un oggetto nel socket in formato serializzato AMF.
Parametri
object:* — L'oggetto da serializzare.
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeShort | () | metodo |
public function writeShort(value:int):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un numero intero a 16 bit nel socket. I byte scritti sono i seguenti:
(v >> 8) & 0xff v & 0xff
Vengono utilizzati i 16 bit inferiori del parametro; i 16 bit superiori vengono ignorati.
Parametri
value:int — Il valore da scrivere nel socket.
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeUnsignedInt | () | metodo |
public function writeUnsignedInt(value:uint):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive un numero intero senza segno a 32 bit nel socket.
Parametri
value:uint — Il valore da scrivere nel socket.
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeUTF | () | metodo |
public function writeUTF(value:String):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive i dati seguenti nel socket: un numero intero senza segno a 16 bit, che indica la lunghezza della stringa UTF-8 specificata espressa in byte, seguita dalla stringa stessa.
Prima di scrivere la stringa, il metodo calcola il numero di byte necessari per rappresentare tutti i caratteri della stringa.
Parametri
value:String — La stringa da scrivere nel socket.
|
Genera
RangeError — La lunghezza è superiore a 65535.
| |
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
writeUTFBytes | () | metodo |
public function writeUTFBytes(value:String):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Scrive una stringa UTF-8 nel socket.
Parametri
value:String — La stringa da scrivere nel socket.
|
Genera
IOError — Si è verificato un errore di I/O nel socket oppure il socket non è aperto.
|
Elementi API correlati
close | Evento |
flash.events.Event
proprietà Event.type =
flash.events.Event.CLOSE
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato quando il server chiude la connessione socket.
L'evento close
viene inviato solo quando il server chiude la connessione; non viene inviato quando si chiama il metodo Socket.close()
.
Event.CLOSE
definisce il valore della proprietà type
di un oggetto evento close
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto la cui connessione è stata chiusa. |
connect | Evento |
flash.events.Event
proprietà Event.type =
flash.events.Event.CONNECT
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato quando è stata stabilita una connessione di rete.
La costanteEvent.CONNECT
definisce il valore della proprietà type
di un oggetto evento connect
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto Socket o XMLSocket che ha stabilito una connessione di rete. |
ioError | Evento |
flash.events.IOErrorEvent
proprietà IOErrorEvent.type =
flash.events.IOErrorEvent.IO_ERROR
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato quando si verifica un errore di input/output che impedisce un'operazione di invio o caricamento.
Definisce il valore della proprietàtype
di un oggetto evento ioError
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
errorID | Un numero di riferimento associato all'errore specifico (solo AIR). |
target | L'oggetto di rete interessato dall'errore di input/output. |
text | Testo da visualizzare come messaggio di errore. |
outputProgress | Evento |
flash.events.OutputProgressEvent
Inviato quando un socket sposta dei dati dal suo buffer di scrittura al livello di trasporto della connettività
securityError | Evento |
flash.events.SecurityErrorEvent
proprietà SecurityErrorEvent.type =
flash.events.SecurityErrorEvent.SECURITY_ERROR
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato se una chiamata a Socket.connect()
tenta di connettersi a un server non autorizzato dalla sandbox di sicurezza del chiamante o a una porta con numero inferiore a 1024 e non è disponibile un file di criteri socket per consentire la connessione.
Nota: in un'applicazione AIR, al contenuto in esecuzione nella sandbox di sicurezza dell'applicazione è consentito connettersi a qualsiasi server e numero di posta senza un file di criteri socket.
La costanteSecurityErrorEvent.SECURITY_ERROR
definisce il valore della proprietà type
di un oggetto evento securityError
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
target | L'oggetto di rete che riporta l'errore di sicurezza. |
text | Testo da visualizzare come messaggio di errore. |
Elementi API correlati
socketData | Evento |
flash.events.ProgressEvent
proprietà ProgressEvent.type =
flash.events.ProgressEvent.SOCKET_DATA
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Inviato se un socket ha ricevuto i dati.
I dati ricevuti dal socket rimangono nel socket fino a quando non vengono letti. Non è necessario leggere tutti i dati disponibili nel gestore di questo evento.
Gli eventi di tipo socketData
non utilizzano la proprietà ProgressEvent.bytesTotal
.
type
di un oggetto evento socketData
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | false |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che sta elaborando attivamente l'evento. |
bytesLoaded | Il numero di elementi o di byte caricati nel momento in cui il listener elabora l'evento. |
bytesTotal | 0; questa proprietà non viene utilizzata dagli oggetti evento socketData . |
target | Il socket che segnala l'avanzamento. |
- La funzione di costruzione crea un'istanza
CustomSocket
di nomesocket
e passa il nome dell'hostlocalhost
e la porta 80 come argomenti. PoichéCustomSocket
estende Socket, una chiamata asuper()
chiama la funzione di costruzione di Socket. - Quindi, l'esempio chiama il metodo
configureListeners()
, che aggiunge i listener per gli eventi Socket. - Infine, viene chiamato il metodo
connect()
del socket conlocalhost
come nome host name e 80 come numero di porta.
Nota: per provare l'esempio, è necessario che un server sia in esecuzione nello stesso dominio in cui risiede il file SWF (nell'esempio, localhost
) e ascolti dalla porta 80.
package { import flash.display.Sprite; public class SocketExample extends Sprite { private var socket:CustomSocket; public function SocketExample() { socket = new CustomSocket("localhost", 80); } } } import flash.errors.*; import flash.events.*; import flash.net.Socket; class CustomSocket extends Socket { private 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(Event.CLOSE, closeHandler); addEventListener(Event.CONNECT, connectHandler); addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler); } private function writeln(str:String):void { str += "\n"; try { writeUTFBytes(str); } catch(e:IOError) { trace(e); } } private function sendRequest():void { trace("sendRequest"); response = ""; writeln("GET /"); flush(); } private function readResponse():void { var str:String = readUTFBytes(bytesAvailable); response += str; } private function closeHandler(event:Event):void { trace("closeHandler: " + event); trace(response.toString()); } private function connectHandler(event:Event):void { trace("connectHandler: " + event); sendRequest(); } 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(); } }
Tue Jun 12 2018, 02:44 PM Z