-
Notifications
You must be signed in to change notification settings - Fork 222
/
server.rs
26 lines (22 loc) · 862 Bytes
/
server.rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
extern crate env_logger;
/// Simple WebSocket server with error handling. It is not necessary to setup logging, but doing
/// so will allow you to see more details about the connection by using the RUST_LOG env variable.
extern crate ws;
use ws::listen;
fn main() {
// Setup logging
env_logger::init();
// Listen on an address and call the closure for each connection
if let Err(error) = listen("127.0.0.1:3012", |out| {
// The handler needs to take ownership of out, so we use move
move |msg| {
// Handle messages received on this connection
println!("Server got message '{}'. ", msg);
// Use the out channel to send messages back
out.send(msg)
}
}) {
// Inform the user of failure
println!("Failed to create WebSocket due to {:?}", error);
}
}