ObjetoSocket
objeto de socket de red
El enchufe pertenece anetmódulo, método de creación
1var s = new net.Socket();
relación de herencia
Constructor
Socket
Constructor de socket, crea un nuevo objeto Socket
1new Socket(Integer family = net.AF_INET);
Parámetros de llamada:
- family: Entero, especifique la dirección establecida, el valor predeterminado es AF_INET, ipv4
propiedades de miembros
family
Entero, consulta el conjunto de direcciones del objeto Socket actual
1readonly Integer Socket.family;
remoteAddress
Cadena, consulta la dirección de la conexión actual de la otra parte
1readonly String Socket.remoteAddress;
remotePort
Entero, consulta el puerto par conectado actualmente
1readonly Integer Socket.remotePort;
localAddress
Cadena, consulta la dirección local de la conexión actual
1readonly String Socket.localAddress;
localPort
Entero, consulta el puerto local de la conexión actual
1readonly Integer Socket.localPort;
timeout
Entero, consulta y configuración de unidades de tiempo de espera en milisegundos
1Integer Socket.timeout;
fd
Entero, consultaStreamEl valor del descriptor de archivo correspondiente, implementado por subclases.
1readonly Integer Socket.fd;
función miembro
connect
Establecer una conexión TCP
1
2
3Socket.connect(String host,
Integer port,
Integer timeout = 0) async;
Parámetros de llamada:
- host: Cadena, especifica la dirección de la otra parte o el nombre de host, o puede apuntar a sockets Unix y rutas de canalización de Windows.
- port: Entero, especifica el puerto de la otra parte. Al conectar un socket Unix y una tubería de Windows, este parámetro debe ser 0
- timeout: Entero, especifica el tiempo de espera, la unidad es milisegundos, el valor predeterminado es 0
bind
Vincular el socket actual al puerto especificado de todas las direcciones locales
1
2Socket.bind(Integer port,
Boolean allowIPv4 = true);
Parámetros de llamada:
- port: Entero, especifica el puerto vinculado
- allowIPv4: booleano, especifica si se aceptan conexiones ipv4; el valor predeterminado es verdadero. Este parámetro es válido para ipv6 y depende del sistema operativo.
Vincular el socket actual al puerto especificado en la dirección especificada
1
2
3Socket.bind(String addr,
Integer port = 0,
Boolean allowIPv4 = true);
Parámetros de llamada:
- addr: Cadena, especifica la dirección de enlace y también puede apuntar a sockets Unix y rutas de canalización de Windows.
- port: Entero, especifica el puerto vinculado. Este parámetro se ignora al vincular el socket Unix y la tubería de Windows.
- allowIPv4: booleano, especifica si se aceptan conexiones ipv4; el valor predeterminado es verdadero. Este parámetro es válido para ipv6 y depende del sistema operativo.
listen
Comience a escuchar solicitudes de conexión
1Socket.listen(Integer backlog = 120);
Parámetros de llamada:
- backlog: Entero, especifica la longitud de la cola de solicitudes. Las solicitudes que excedan el límite serán rechazadas. El valor predeterminado es 120.
accept
Esperar y aceptar una conexión.
1Socket Socket.accept() async;
Resultados de devolución:
- Socket, devuelve el objeto de conexión recibido
recv
Leer datos de un tamaño específico desde la conexión. A diferencia del método de lectura, recv no garantiza que se hayan leído los datos requeridos, pero regresa inmediatamente después de leer los datos.
1Buffer Socket.recv(Integer bytes = -1) async;
Parámetros de llamada:
- bytes: Entero, especifica la cantidad de datos que se leerán. De forma predeterminada, se leen datos de cualquier tamaño.
Resultados de devolución:
- Buffer, devuelve los datos leídos de la conexión
send
Escriba los datos proporcionados en la conexión. Este método es equivalente al método de escritura.
1Socket.send(Buffer data) async;
Parámetros de llamada:
- data:Buffer, dados los datos a escribir
read
Leer datos de tamaño especificado de la secuencia
1Buffer Socket.read(Integer bytes = -1) async;
Parámetros de llamada:
- bytes: Entero, especifica la cantidad de datos que se leerán. El valor predeterminado es leer bloques de datos de tamaño aleatorio. El tamaño de los datos leídos depende del dispositivo.
Resultados de devolución:
- Buffer, devuelve los datos leídos de la secuencia. Si no hay datos para leer o la conexión se interrumpe, se devuelve nulo.
write
Escribe los datos dados en la secuencia.
1Socket.write(Buffer data) async;
Parámetros de llamada:
- data:Buffer, dados los datos a escribir
flush
Escribir el contenido del búfer de archivos en un dispositivo físico
1Socket.flush() async;
close
Cerrar el objeto de flujo actual
1Socket.close() async;
copyTo
Copiar datos de la transmisión a la transmisión de destino
1
2Long Socket.copyTo(Stream stm,
Long bytes = -1) async;
Parámetros de llamada:
- stm:Stream, objeto de flujo de destino
- bytes: Largo, número de bytes copiados
Resultados de devolución:
- Long, devuelve el número de bytes copiados
toString
Devuelve la representación de cadena del objeto. Generalmente, se devuelve "[Objeto nativo]". El objeto se puede volver a implementar de acuerdo con sus propias características.
1String Socket.toString();
Resultados de devolución:
- String, devuelve la representación de cadena del objeto
toJSON
Devuelve una representación en formato JSON del objeto, que generalmente devuelve una colección de propiedades legibles definidas por el objeto.
1Value Socket.toJSON(String key = "");
Parámetros de llamada:
- key: Cadena, no utilizada
Resultados de devolución:
- Value, devuelve un valor que contiene JSON serializable