如何在带有镍的路由中使用多个变量

  • 本文关键字:变量 路由 rust nickel
  • 更新时间 :
  • 英文 :


Nickel 声明您可以在 URL 中使用变量,这听起来非常有用,但是可以使用多个变量吗?

像这样:

www.example.com/login/:userid?:apikey?:etc
server.get("/start/:userid?:passwd", middleware! { |request|
    // format!("This is user: {:?} = {:?}",
    // request.param("userid"),
    // request.param("passwd")
    // );
});
你需要

一个分隔符。例如:

#[macro_use] extern crate nickel;
use nickel::Nickel;
fn main() {
    let mut server = Nickel::new();
    server.utilize(router! {
        get "/start/:userid/:passwd" => |request, _response| {
            println!("this is user: {:?} = {:?}",
                     request.param("userid"),
                     request.param("passwd")
                    );
            "Hello world!"
        }
    });
    server.listen("127.0.0.1:6767");
}

从您的问题来看,您可能期望passwd作为某种查询参数,而不是在 URL 中。

我会提醒您不要创建与GET的会话,您应该改用POST

最新更新