github_url: | hide |
---|
Inherits: :ref:`WebSocketMultiplayerPeer<class_WebSocketMultiplayerPeer>` < :ref:`NetworkedMultiplayerPeer<class_NetworkedMultiplayerPeer>` < :ref:`PacketPeer<class_PacketPeer>` < :ref:`Reference<class_Reference>` < :ref:`Object<class_Object>`
A WebSocket client implementation.
This class implements a WebSocket client compatible with any RFC 6455-compliant WebSocket server.
This client can be optionally used as a network peer for the :ref:`MultiplayerAPI<class_MultiplayerAPI>`.
After starting the client (:ref:`connect_to_url<class_WebSocketClient_method_connect_to_url>`), you will need to :ref:`NetworkedMultiplayerPeer.poll<class_NetworkedMultiplayerPeer_method_poll>` it at regular intervals (e.g. inside :ref:`Node._process<class_Node_method__process>`).
You will receive appropriate signals when connecting, disconnecting, or when new data is available.
:ref:`Error<enum_@GlobalScope_Error>` | :ref:`connect_to_url<class_WebSocketClient_method_connect_to_url>` ( :ref:`String<class_String>` url, :ref:`PackedStringArray<class_PackedStringArray>` protocols=PackedStringArray( ), :ref:`bool<class_bool>` gd_mp_api=false, :ref:`PackedStringArray<class_PackedStringArray>` custom_headers=PackedStringArray( ) ) |
void | :ref:`disconnect_from_host<class_WebSocketClient_method_disconnect_from_host>` ( :ref:`int<class_int>` code=1000, :ref:`String<class_String>` reason="" ) |
:ref:`String<class_String>` | :ref:`get_connected_host<class_WebSocketClient_method_get_connected_host>` ( ) const |
:ref:`int<class_int>` | :ref:`get_connected_port<class_WebSocketClient_method_get_connected_port>` ( ) const |
Emitted when the connection to the server is closed. was_clean_close
will be true
if the connection was shutdown cleanly.
Emitted when the connection to the server fails.
Emitted when a connection with the server is established, protocol
will contain the sub-protocol agreed with the server.
Emitted when a WebSocket message is received.
Note: This signal is not emitted when used as high-level multiplayer peer.
Emitted when the server requests a clean close. You should keep polling until you get a :ref:`connection_closed<class_WebSocketClient_signal_connection_closed>` signal to achieve the clean close. See :ref:`WebSocketPeer.close<class_WebSocketPeer_method_close>` for more details.
Setter | set_trusted_ssl_certificate(value) |
Getter | get_trusted_ssl_certificate() |
If specified, this :ref:`X509Certificate<class_X509Certificate>` will be the only one accepted when connecting to an SSL host. Any other certificate provided by the server will be regarded as invalid.
Note: Specifying a custom trusted_ssl_certificate
is not supported in HTML5 exports due to browsers restrictions.
Setter | set_verify_ssl_enabled(value) |
Getter | is_verify_ssl_enabled() |
If true
, SSL certificate verification is enabled.
Note: You must specify the certificates to be used in the Project Settings for it to work when exported.
Connects to the given URL requesting one of the given protocols
as sub-protocol. If the list empty (default), no sub-protocol will be requested.
If true
is passed as gd_mp_api
, the client will behave like a network peer for the :ref:`MultiplayerAPI<class_MultiplayerAPI>`, connections to non-Godot servers will not work, and :ref:`data_received<class_WebSocketClient_signal_data_received>` will not be emitted.
If false
is passed instead (default), you must call :ref:`PacketPeer<class_PacketPeer>` functions (put_packet
, get_packet
, etc.) on the :ref:`WebSocketPeer<class_WebSocketPeer>` returned via get_peer(1)
and not on this object directly (e.g. get_peer(1).put_packet(data)
).
You can optionally pass a list of custom_headers
to be added to the handshake HTTP request.
Note: Specifying custom_headers
is not supported in HTML5 exports due to browsers restrictions.
Disconnects this client from the connected host. See :ref:`WebSocketPeer.close<class_WebSocketPeer_method_close>` for more information.
Return the IP address of the currently connected host.
Return the IP port of the currently connected host.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。