1
0
Fork 0
mirror of https://github.com/actix/actix-web.git synced 2024-09-28 22:32:02 +00:00
Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.
Find a file
Peter Ding 64f603b076 Support to set header names of ClientRequest as Camel-Case (#713)
* Support to set header names of `ClientRequest` as Camel-Case

This is the case for supporting to request for servers which don't
perfectly implement the `RFC 7230`. It is important for an app
which uses `ClientRequest` as core part.

* Add field `upper_camel_case_headers` to `ClientRequest`.

* Add function `set_upper_camel_case_headers` to `ClientRequest`
  and `ClientRequestBuilder` to set field `upper_camel_case_headers`.

* Add trait `client::writer::UpperCamelCaseHeader` for
  `http::header::HeaderName`, let it can be converted to Camel-Case
  then writed to buffer.

* Add test `test_client::test_upper_camel_case_headers`.

* Support upper Camel-Case headers

* [actix-http] Add field `upper_camel_case_headers` for `RequestHead`
* [actix-http] Add code for `MessageType` to support upper camel case
* [awc] Add functions for `ClientRequest` to set upper camel case

* Use `Flags::CAMEL_CASE` for upper camel case of headers
2019-04-24 10:48:49 -07:00
actix-files update dep versions 2019-04-21 09:03:46 -07:00
actix-framed update tests 2019-04-18 21:28:23 -07:00
actix-http Support to set header names of ClientRequest as Camel-Case (#713) 2019-04-24 10:48:49 -07:00
actix-multipart do not consume boundary 2019-04-21 16:14:09 -07:00
actix-session beta.1 release 2019-04-20 21:16:51 -07:00
actix-web-actors update dep versions 2019-04-21 09:03:46 -07:00
actix-web-codegen beta.1 release 2019-04-20 21:16:51 -07:00
awc Support to set header names of ClientRequest as Camel-Case (#713) 2019-04-24 10:48:49 -07:00
examples Allow to use any service as default service 2019-04-13 22:25:00 -07:00
src allow to override responder's status code and headers 2019-04-24 10:25:46 -07:00
test-server prepare actix-http-test release 2019-04-24 07:31:33 -07:00
tests more tests 2019-04-17 17:48:25 -07:00
.appveyor.yml update deps 2018-10-08 21:58:37 -07:00
.gitignore start working on guide 2017-11-27 16:41:37 -08:00
.travis.yml do not generate all docs; use docs.rs for 1.0 docs 2019-04-13 09:35:23 -07:00
Cargo.toml prepare actix-http-test release 2019-04-24 07:31:33 -07:00
CHANGES.md allow to override responder's status code and headers 2019-04-24 10:25:46 -07:00
CODE_OF_CONDUCT.md code of conduct 2018-01-21 15:29:02 -08:00
LICENSE-APACHE add mit license 2017-12-17 10:08:44 -08:00
LICENSE-MIT spelling check 2018-03-24 09:35:52 +03:00
MIGRATION.md update version 2019-04-19 13:55:36 -07:00
README.md do not generate all docs; use docs.rs for 1.0 docs 2019-04-13 09:35:23 -07:00
rustfmt.toml copy actix-web2 2019-03-01 22:51:32 -08:00

Actix web Build Status codecov crates.io Join the chat at https://gitter.im/actix/actix

Actix web is a simple, pragmatic and extremely fast web framework for Rust.

Documentation & community resources

Example

use actix_web::{web, App, HttpServer, Responder};

fn index(info: web::Path<(u32, String)>) -> impl Responder {
    format!("Hello {}! id:{}", info.1, info.0)
}

fn main() -> std::io::Result<()> {
    HttpServer::new(
        || App::new().service(
              web::resource("/{id}/{name}/index.html").to(index)))
        .bind("127.0.0.1:8080")?
        .run()
}

More examples

You may consider checking out this directory for more examples.

Benchmarks

License

This project is licensed under either of

at your option.

Code of Conduct

Contribution to the actix-web crate is organized under the terms of the Contributor Covenant, the maintainer of actix-web, @fafhrd91, promises to intervene to uphold that code of conduct.