Struct tungstenite::protocol::WebSocket [−][src]
pub struct WebSocket<Stream> { /* fields omitted */ }
WebSocket input-output stream.
This is THE structure you want to create to be able to speak the WebSocket protocol.
It may be created by calling connect
, accept
or client
functions.
Methods
impl<Stream> WebSocket<Stream>
[src]
impl<Stream> WebSocket<Stream>
pub fn from_raw_socket(
stream: Stream,
role: Role,
config: Option<WebSocketConfig>
) -> Self
[src]
pub fn from_raw_socket(
stream: Stream,
role: Role,
config: Option<WebSocketConfig>
) -> Self
Convert a raw socket into a WebSocket without performing a handshake.
Call this function if you're using Tungstenite as a part of a web framework
or together with an existing one. If you need an initial handshake, use
connect()
or accept()
functions of the crate to construct a websocket.
pub fn from_partially_read(
stream: Stream,
part: Vec<u8>,
role: Role,
config: Option<WebSocketConfig>
) -> Self
[src]
pub fn from_partially_read(
stream: Stream,
part: Vec<u8>,
role: Role,
config: Option<WebSocketConfig>
) -> Self
Convert a raw socket into a WebSocket without performing a handshake.
Call this function if you're using Tungstenite as a part of a web framework
or together with an existing one. If you need an initial handshake, use
connect()
or accept()
functions of the crate to construct a websocket.
ⓘImportant traits for &'a mut Wpub fn get_ref(&self) -> &Stream
[src]
pub fn get_ref(&self) -> &Stream
Returns a shared reference to the inner stream.
ⓘImportant traits for &'a mut Wpub fn get_mut(&mut self) -> &mut Stream
[src]
pub fn get_mut(&mut self) -> &mut Stream
Returns a mutable reference to the inner stream.
pub fn set_config(
&mut self,
set_func: impl FnOnce(&mut WebSocketConfig)
)
[src]
pub fn set_config(
&mut self,
set_func: impl FnOnce(&mut WebSocketConfig)
)
Change the configuration.
impl<Stream: Read + Write> WebSocket<Stream>
[src]
impl<Stream: Read + Write> WebSocket<Stream>
pub fn read_message(&mut self) -> Result<Message>
[src]
pub fn read_message(&mut self) -> Result<Message>
Read a message from stream, if possible.
This function sends pong and close responses automatically. However, it never blocks on write.
pub fn write_message(&mut self, message: Message) -> Result<()>
[src]
pub fn write_message(&mut self, message: Message) -> Result<()>
Send a message to stream, if possible.
WebSocket will buffer a configurable number of messages at a time, except to reply to Ping
and Close requests. If the WebSocket's send queue is full, SendQueueFull
will be returned
along with the passed message. Otherwise, the message is queued and Ok(()) is returned.
Note that only the last pong frame is stored to be sent, and only the most recent pong frame is sent if multiple pong frames are queued.
pub fn close(&mut self, code: Option<CloseFrame>) -> Result<()>
[src]
pub fn close(&mut self, code: Option<CloseFrame>) -> Result<()>
Close the connection.
This function guarantees that the close frame will be queued. There is no need to call it again.
pub fn write_pending(&mut self) -> Result<()>
[src]
pub fn write_pending(&mut self) -> Result<()>
Flush the pending send queue.