1
0
mirror of https://github.com/actix/actix-website synced 2024-12-02 19:52:23 +01:00
actix-website/examples/extractors/src/path_three.rs

22 lines
628 B
Rust
Raw Normal View History

2020-09-12 17:21:54 +02:00
use actix_web::{get, HttpRequest, Result};
// <path-three>
2022-04-07 16:54:55 +02:00
#[get("/users/{user_id}/{friend}")] // <- define path parameters
async fn index(req: HttpRequest) -> Result<String> {
2020-09-12 17:21:54 +02:00
let name: String = req.match_info().get("friend").unwrap().parse().unwrap();
2022-04-07 16:54:55 +02:00
let userid: i32 = req.match_info().query("user_id").parse().unwrap();
2022-04-07 16:54:55 +02:00
Ok(format!("Welcome {}, user_id {}!", name, userid))
}
2020-09-12 17:21:54 +02:00
#[actix_web::main]
async fn main() -> std::io::Result<()> {
2019-06-28 19:31:30 +02:00
use actix_web::{App, HttpServer};
2020-09-12 17:21:54 +02:00
HttpServer::new(|| App::new().service(index))
2022-02-26 04:56:24 +01:00
.bind(("127.0.0.1", 8080))?
2020-09-12 17:21:54 +02:00
.run()
.await
}
// </path-three>