25 lines
624 B
Rust
25 lines
624 B
Rust
use std::net::SocketAddr;
|
|
use clap::Parser;
|
|
use warp::Filter;
|
|
|
|
#[derive(Parser, Debug)]
|
|
#[command(author, version, about, long_about = None)]
|
|
struct CLIArgs {
|
|
#[arg(short, long)]
|
|
bind: String
|
|
}
|
|
|
|
#[tokio::main]
|
|
async fn main() {
|
|
let args = CLIArgs::parse();
|
|
let addr: SocketAddr = args.bind.parse().expect(&format!("Cannot bind to {}. Please provide a host and port like [::1]:8000", &args.bind));
|
|
|
|
println!("Server listening to {}", &args.bind);
|
|
|
|
let routes = warp::any().map(|| "Hello, World!");
|
|
warp::serve(routes).run(addr).await;
|
|
|
|
println!("Turning out server");
|
|
println!("Adieu");
|
|
}
|