9个版本

使用旧版Rust 2015

0.4.0 2018年11月26日
0.3.2 2017年1月11日
0.3.1 2016年12月5日
0.2.1 2016年10月8日
0.1.1 2016年5月25日

#1406 in HTTP服务器

26 monthly downloads

MIT 许可证

6KB
94 代码行数(不包括注释)

limiter

Build Status

这是Iron框架的BeforeMiddleware的一个示例。它通过检查Content-Length头和有效负载的大小来限制请求体大小。响应将是HTTP 413或者继续链式调用。

它还会设置URL长度的上限,这在常规GET请求中可能很有用。

在您的Cargo.toml文件中包含以下内容

[dependencies]
limiter = "0.3"

文档

https://docs.rs/limiter

示例

extern crate iron;
extern crate limiter;

use iron::prelude::*;

use limiter::RequestLimit;

fn index(_: &mut Request) -> IronResult<Response> {
    Ok(Response::with((iron::status::Ok, "Test")))
}

fn main() {
    let max_request = RequestLimit::default();
    let mut chain = Chain::new(index);
    chain.link_before(max_request);
    Iron::new(chain).http("localhost:3000").unwrap();
}

许可证

MIT

依赖项

~4.5MB
~114K SLoC