diff --git a/rweb/Cargo.toml b/rweb/Cargo.toml new file mode 100644 index 0000000..976dd2f --- /dev/null +++ b/rweb/Cargo.toml @@ -0,0 +1,11 @@ +[package] +name = "rweb" +version = "0.1.0" +authors = ["Hatter Jiang "] +edition = "2018" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +tokio = "0.2" +rweb = "0.4.0" diff --git a/rweb/src/main.rs b/rweb/src/main.rs new file mode 100644 index 0000000..4b810f0 --- /dev/null +++ b/rweb/src/main.rs @@ -0,0 +1,32 @@ +use rweb::*; + +#[get("/name")] +fn name() -> String { + "Tom\n".into() +} + +#[get("/name/{n}")] +fn name_n(n: String) -> String { + format!("Hello: {}\n", n) +} + +#[get("/json_list")] +fn get_json_list() -> Json> { + vec![ "1".into(), "2".into(), "3".into() ].into() +} + +#[get("/")] +fn root() -> String { + "Root\n".into() +} + +#[tokio::main] +async fn main() { + println!("Start listen on: 127.0.0.1:8080 ..."); + serve( + root() + .or(name()) + .or(name_n()) + .or(get_json_list()) + ).run(([127, 0, 0, 1], 8080)).await; +}