Update examples to compile again

This commit is contained in:
Sebastian Dröge 2019-11-24 15:06:41 +01:00
parent 07d4721ffd
commit f659af4493
3 changed files with 18 additions and 21 deletions

View File

@ -2,19 +2,19 @@ use std::net::TcpListener;
use std::thread::spawn;
use tungstenite::accept_hdr;
use tungstenite::handshake::server::{ErrorResponse, Request};
use tungstenite::handshake::server::{Request, Response};
use tungstenite::http::StatusCode;
fn main() {
let server = TcpListener::bind("127.0.0.1:3012").unwrap();
for stream in server.incoming() {
spawn(move || {
let callback = |_req: &Request| {
Err(ErrorResponse {
error_code: StatusCode::FORBIDDEN,
headers: None,
body: Some("Access denied".into()),
})
let callback = |_req: &Request, _resp| {
let resp = Response::builder()
.status(StatusCode::FORBIDDEN)
.body(Some("Access denied".into()))
.unwrap();
Err(resp)
};
accept_hdr(stream.unwrap(), callback).unwrap_err();
});

View File

@ -8,9 +8,9 @@ fn main() {
connect(Url::parse("ws://localhost:3012/socket").unwrap()).expect("Can't connect");
println!("Connected to the server");
println!("Response HTTP code: {}", response.code);
println!("Response HTTP code: {}", response.status());
println!("Response contains the following headers:");
for &(ref header, _ /*value*/) in response.headers.iter() {
for (ref header, _value) in response.headers() {
println!("* {}", header);
}

View File

@ -2,30 +2,27 @@ use std::net::TcpListener;
use std::thread::spawn;
use tungstenite::accept_hdr;
use tungstenite::handshake::server::Request;
use tungstenite::handshake::server::{Request, Response};
fn main() {
env_logger::init();
let server = TcpListener::bind("127.0.0.1:3012").unwrap();
for stream in server.incoming() {
spawn(move || {
let callback = |req: &Request| {
let callback = |req: &Request, mut response: Response| {
println!("Received a new ws handshake");
println!("The request's path is: {}", req.path);
println!("The request's path is: {}", req.uri().path());
println!("The request's headers are:");
for &(ref header, _ /* value */) in req.headers.iter() {
for (ref header, _value) in req.headers() {
println!("* {}", header);
}
// Let's add an additional header to our response to the client.
let extra_headers = vec![
(String::from("MyCustomHeader"), String::from(":)")),
(
String::from("SOME_TUNGSTENITE_HEADER"),
String::from("header_value"),
),
];
Ok(Some(extra_headers))
let headers = response.headers_mut();
headers.append("MyCustomHeader", ":)".parse().unwrap());
headers.append("SOME_TUNGSTENITE_HEADER", "header_value".parse().unwrap());
Ok(response)
};
let mut websocket = accept_hdr(stream.unwrap(), callback).unwrap();