title: menu: docs_protocols weight: 240

Actix-web supports WebSockets with the actix-web-actors crate. It is possible to convert a request’s Payload to a stream of ws::Message with a web::Payload and then use stream combinators to handle actual messages, but it is simpler to handle websocket communications with an http actor.

The following is an example of a simple websocket echo server:

{{< include-example example=”websockets” file=”main.rs” section=”websockets” >}}

A simple websocket echo server example is available in the examples directory.

An example chat server with the ability to chat over a websocket or TCP connection is available in websocket-chat directory