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
.
Auto Trait Implementations§
impl Freeze for Server
impl !RefUnwindSafe for Server
impl Send for Server
impl !Sync for Server
impl Unpin for Server
impl !UnwindSafe for Server
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more