pub struct Server { /* private fields */ }
Expand description
Websocket handshake server. This is similar to handshake::Server
, but it is
focused on performing the WebSocket handshake using a provided http::Request
, as opposed
to decoding the request internally.
Implementations§
source§impl Server
impl Server
sourcepub fn set_buffer(&mut self, b: BytesMut) -> &mut Self
pub fn set_buffer(&mut self, b: BytesMut) -> &mut Self
Override the buffer to use for request/response handling.
sourcepub fn take_buffer(&mut self) -> BytesMut
pub fn take_buffer(&mut self) -> BytesMut
Extract the buffer.
sourcepub fn add_extension(&mut self, e: Box<dyn Extension + Send>) -> &mut Self
pub fn add_extension(&mut self, e: Box<dyn Extension + Send>) -> &mut Self
Add an extension the server supports.
sourcepub fn drain_extensions(
&mut self
) -> impl Iterator<Item = Box<dyn Extension + Send>> + '_
pub fn drain_extensions(
&mut self
) -> impl Iterator<Item = Box<dyn Extension + Send>> + '_
Get back all extensions.
sourcepub fn receive_request<B>(
&mut self,
req: &Request<B>
) -> Result<Response<()>, Error>
pub fn receive_request<B>(
&mut self,
req: &Request<B>
) -> Result<Response<()>, Error>
Attempt to interpret the provided http::Request
as a WebSocket Upgrade request. If successful, this
returns an http::Response
that should be returned to the client to complete the handshake.
sourcepub fn into_builder<T: AsyncRead + AsyncWrite + Unpin>(
self,
socket: T
) -> Builder<T>
pub fn into_builder<T: AsyncRead + AsyncWrite + Unpin>(
self,
socket: T
) -> Builder<T>
Turn this handshake into a connection::Builder
.