Skip to main content

13_websocket/
13_websocket.rs

1use flyer::{server, websocket::{Websocket, WriterInterface}};
2
3fn main() {
4    let server = server("127.0.0.1", 9999);
5
6    server.router().group("", |router| {
7        router.ws("/", async |_req, ws| -> Websocket {
8            ws.on(async |event, writer| {
9                match event {
10                    flyer::websocket::Event::Ready() => todo!(),
11                    flyer::websocket::Event::Text(bytes) => {
12                        println!("Received: {}", String::from_utf8_lossy(&bytes));
13                        writer.write("Hello from WebSocket!".into()).unwrap();
14                    },
15                    flyer::websocket::Event::Binary(_bytes) => todo!(),
16                    flyer::websocket::Event::Ping(_bytes) => todo!(),
17                    flyer::websocket::Event::Pong(_bytes) => todo!(),
18                    flyer::websocket::Event::Close(_reason) => todo!(),
19                }
20            })
21        });
22    });
23
24    print!("\r\n\r\nRunning server: {}\r\n\r\n", server.address());
25
26    server.listen();
27}