ObjectSocket
oggetto socket di rete
La presa appartiene anetmodulo, metodo di creazione
1var s = new net.Socket();
rapporto ereditario
Costruttore
Socket
Costruttore Socket, crea un nuovo oggetto Socket
1new Socket(Integer family = net.AF_INET);
Parametri di chiamata:
- family: Numero intero, specificare l'indirizzo impostato, il valore predefinito è AF_INET, ipv4
proprietà dei membri
family
Intero, interroga il set di indirizzi dell'oggetto Socket corrente
1readonly Integer Socket.family;
remoteAddress
String, interroga l'indirizzo dell'altra parte della connessione corrente
1readonly String Socket.remoteAddress;
remotePort
Intero, interroga la porta peer attualmente connessa
1readonly Integer Socket.remotePort;
localAddress
String, interroga l'indirizzo locale della connessione corrente
1readonly String Socket.localAddress;
localPort
Intero, interroga la porta locale della connessione corrente
1readonly Integer Socket.localPort;
timeout
Intero, interroga e imposta l'unità di timeout in millisecondi
1Integer Socket.timeout;
fd
Intero, interrogazioneStreamIl valore del descrittore di file corrispondente, implementato dalle sottoclassi
1readonly Integer Socket.fd;
funzione membro
connect
Stabilire una connessione TCP
1
2
3Socket.connect(String host,
Integer port,
Integer timeout = 0) async;
Parametri di chiamata:
- host: String, specifica l'indirizzo o il nome host dell'altra parte oppure può puntare al socket Unix e ai percorsi delle pipe Windows
- port: Numero intero, specifica la porta dell'altra parte.Quando si collega il socket Unix e la pipe Windows, questo parametro deve essere 0
- timeout: Numero intero, specifica il timeout, l'unità è millisecondi, il valore predefinito è 0
bind
Associa il Socket corrente alla porta specificata di tutti gli indirizzi locali
1
2Socket.bind(Integer port,
Boolean allowIPv4 = true);
Parametri di chiamata:
- port: numero intero, specifica la porta collegata
- allowIPv4: Booleano, specifica se accettare connessioni IPv4, il valore predefinito è true. Questo parametro è valido per ipv6 e dipende dal sistema operativo
Associa il Socket corrente alla porta specificata all'indirizzo specificato
1
2
3Socket.bind(String addr,
Integer port = 0,
Boolean allowIPv4 = true);
Parametri di chiamata:
- addr: String, specifica l'indirizzo di collegamento e può anche puntare al socket Unix e ai percorsi delle pipe di Windows
- port: numero intero, specifica la porta associata. Questo parametro viene ignorato quando si associa socket Unix e pipe Windows.
- allowIPv4: Booleano, specifica se accettare connessioni IPv4, il valore predefinito è true. Questo parametro è valido per ipv6 e dipende dal sistema operativo
listen
Inizia ad ascoltare le richieste di connessione
1Socket.listen(Integer backlog = 120);
Parametri di chiamata:
- backlog: numero intero, specifica la lunghezza della coda delle richieste. Le richieste che superano il limite verranno rifiutate. Il valore predefinito è 120.
accept
Attendi e accetta una connessione
1Socket Socket.accept() async;
Risultati restituiti:
- Socket, restituisce l'oggetto di connessione ricevuto
recv
Legge i dati di una dimensione specificata dalla connessione. A differenza del metodo read, recv non garantisce che i dati richiesti siano stati letti, ma restituisce immediatamente dopo aver letto i dati.
1Buffer Socket.recv(Integer bytes = -1) async;
Parametri di chiamata:
- bytes: Numero intero, specifica la quantità di dati da leggere. Per impostazione predefinita, vengono letti dati di qualsiasi dimensione.
Risultati restituiti:
- Buffer, restituisce i dati letti dalla connessione
send
Scrivere i dati forniti nella connessione. Questo metodo è equivalente al metodo write.
1Socket.send(Buffer data) async;
Parametri di chiamata:
- data:Buffer, dati i dati da scrivere
read
Leggere i dati della dimensione specificata dal flusso
1Buffer Socket.read(Integer bytes = -1) async;
Parametri di chiamata:
- bytes: Numero intero, specifica la quantità di dati da leggere. L'impostazione predefinita prevede la lettura di blocchi di dati di dimensione casuale. La dimensione dei dati letti dipende dal dispositivo.
Risultati restituiti:
- Buffer, restituisce i dati letti dallo stream. Se non ci sono dati da leggere o la connessione viene interrotta, viene restituito null.
write
Scrivere i dati forniti nello stream
1Socket.write(Buffer data) async;
Parametri di chiamata:
- data:Buffer, dati i dati da scrivere
flush
Scrive il contenuto del buffer del file sul dispositivo fisico
1Socket.flush() async;
close
Chiude l'oggetto stream corrente
1Socket.close() async;
copyTo
Copia i dati del flusso nel flusso di destinazione
1
2Long Socket.copyTo(Stream stm,
Long bytes = -1) async;
Parametri di chiamata:
- stm:Stream, oggetto flusso di destinazione
- bytes: Lungo, numero di byte copiati
Risultati restituiti:
- Long, restituisce il numero di byte copiati
toString
Restituisce la rappresentazione in formato stringa dell'oggetto. Generalmente viene restituito "[Oggetto nativo]". L'oggetto può essere reimplementato in base alle proprie caratteristiche.
1String Socket.toString();
Risultati restituiti:
- String, restituisce la rappresentazione di stringa dell'oggetto
toJSON
Restituisce una rappresentazione in formato JSON dell'oggetto, generalmente restituendo una raccolta di proprietà leggibili definite dall'oggetto.
1Value Socket.toJSON(String key = "");
Parametri di chiamata:
- key: Stringa, non utilizzata
Risultati restituiti:
- Value, restituisce un valore contenente JSON serializzabile