4个版本
使用旧Rust 2015
0.1.3 | 2016年9月7日 |
---|---|
0.1.2 | 2016年8月6日 |
0.1.1 | 2016年7月15日 |
0.1.0 | 2016年7月12日 |
#9 in #request-parameters
5KB
81 行
iron-params
Iron Web框架的请求参数扩展。
iron-params 是Iron请求的一个快速、方便且灵活的扩展,它允许从Iron请求中检索查询/表单参数并将其转换为所需的类型。
示例
extern crate iron;
extern crate iron_params as params;
use iron::prelude::*;
use params::*;
// To run, $ cargo run --example simple
// to use, $ curl -d "ids=1,2,3&channel=1" "http://127.0.0.1:3000/?ids=4,5,6,"
fn main() {
let mut chain = Chain::new(handler);
chain.link_before(params::Params {});
Iron::new(chain).http("localhost:3000").unwrap();
}
fn handler(req: &mut Request) -> IronResult<Response> {
let mut content = String::new();
let ids = req.params("ids");
content.push_str(&format!("ids:{:?}\n", ids));
let channel = req.param::<i32>("channel");
content.push_str(&format!("channel:{:?}\n", channel));
let channel = req.param::<String>("channel");
content.push_str(&format!("channel:{:?}\n", channel));
let channel = req.param::<f32>("channel");
content.push_str(&format!("channel:{:?}\n", channel));
Ok(Response::with((iron::status::Ok, content)))
}
安装
如果您使用cargo,只需将iron-params添加到您的Cargo.toml
中。
[dependencies]
iron-params = "*"
否则,运行cargo build
,rlib将位于您的target
目录中。
示例
依赖项
~5MB
~116K SLoC