:github_url: hide .. _class_TCPServer: TCPServer ========= **Hereda:** :ref:`SocketServer` **<** :ref:`RefCounted` **<** :ref:`Object` Un servidor TCP. .. rst-class:: classref-introduction-group Descripción ---------------------- Un servidor TCP. Escucha las conexiones en un puerto y devuelve un :ref:`StreamPeerTCP` cuando recibe una conexión entrante. \ **Nota:** Al exportar a Android, asegúrate de habilitar el permiso ``INTERNET`` en el preajuste de exportación de Android antes de exportar el proyecto o usar el despliegue con un solo clic. De lo contrario, cualquier tipo de comunicación de red será bloqueada por Android. .. rst-class:: classref-reftable-group Métodos -------------- .. table:: :widths: auto +-------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_local_port`\ (\ ) |const| | +-------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`listen`\ (\ port\: :ref:`int`, bind_address\: :ref:`String` = "*"\ ) | +-------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`StreamPeerTCP` | :ref:`take_connection`\ (\ ) | +-------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Descripciones de Métodos ------------------------------------------------ .. _class_TCPServer_method_get_local_port: .. rst-class:: classref-method :ref:`int` **get_local_port**\ (\ ) |const| :ref:`🔗` Devuelve el puerto local que este servidor está escuchando. .. rst-class:: classref-item-separator ---- .. _class_TCPServer_method_listen: .. rst-class:: classref-method :ref:`Error` **listen**\ (\ port\: :ref:`int`, bind_address\: :ref:`String` = "*"\ ) :ref:`🔗` Listen on the ``port`` binding to ``bind_address``. If ``bind_address`` is set as ``"*"`` (default), the server will listen on all available addresses (both IPv4 and IPv6). If ``bind_address`` is set as ``"0.0.0.0"`` (for IPv4) or ``"::"`` (for IPv6), the server will listen on all available addresses matching that IP type. If ``bind_address`` is set to any valid address (e.g. ``"192.168.1.101"``, ``"::1"``, etc.), the server will only listen on the interface with that address (or fail if no interface with the given address exists). .. rst-class:: classref-item-separator ---- .. _class_TCPServer_method_take_connection: .. rst-class:: classref-method :ref:`StreamPeerTCP` **take_connection**\ (\ ) :ref:`🔗` Si hay una conexión disponible, devuelve un StreamPeerTCP con la conexión. .. |virtual| replace:: :abbr:`virtual (Normalmente, este método debería ser sobreescrito por el usuario para que tenga algún efecto.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (Este método no tiene efectos secundarios. No modifica ninguna de las variables miembro de la instancia.)` .. |vararg| replace:: :abbr:`vararg (Este método permite agregar cualquier número de argumentos después de los descritos aquí.)` .. |constructor| replace:: :abbr:`constructor (Este método se utiliza para construir un tipo.)` .. |static| replace:: :abbr:`static (Este método no necesita una instancia para ser llamado, por lo que puede llamarse directamente utilizando el nombre de la clase.)` .. |operator| replace:: :abbr:`operator (Este método describe un operador válido para usar con este tipo como operando izquierdo.)` .. |bitfield| replace:: :abbr:`BitField (Este valor es un entero compuesto como una máscara de bits de las siguientes banderas.)` .. |void| replace:: :abbr:`void (Sin valor de retorno.)`