blob: 76014d576a0e0231bc6471ed5664fb71e6fd2258 (
plain) (
blame)
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
27
28
29
30
|
//! `cargo run --example callbacks`
use windmark::context::HookContext;
#[windmark::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
windmark::router::Router::new()
.set_private_key_file("windmark_private.pem")
.set_certificate_file("windmark_public.pem")
.mount("/", windmark::success!("Hello!"))
.set_pre_route_callback(|context: HookContext| {
println!(
"accepted connection from {} to {}",
context.peer_address.unwrap().ip(),
context.url.to_string()
)
})
.set_post_route_callback(
|context: HookContext, content: &mut windmark::response::Response| {
content.content = content.content.replace("Hello", "Hi");
println!(
"closed connection from {}",
context.peer_address.unwrap().ip()
)
},
)
.run()
.await
}
|