mirror of
https://github.com/fafhrd91/actix-web
synced 2024-11-27 17:52:56 +01:00
update changelog
This commit is contained in:
parent
818c0f8cad
commit
d5ad250193
@ -8,6 +8,7 @@
|
|||||||
* `HttpResponse::map_into_{left,right}_body` and `HttpResponse::map_into_boxed_body`. [#2468]
|
* `HttpResponse::map_into_{left,right}_body` and `HttpResponse::map_into_boxed_body`. [#2468]
|
||||||
* `ServiceResponse::map_into_{left,right}_body` and `HttpResponse::map_into_boxed_body`. [#2468]
|
* `ServiceResponse::map_into_{left,right}_body` and `HttpResponse::map_into_boxed_body`. [#2468]
|
||||||
* Connection data set through the `HttpServer::on_connect` callback is now accessible only from the new `HttpRequest::conn_data()` and `ServiceRequest::conn_data()` methods. [#2491]
|
* Connection data set through the `HttpServer::on_connect` callback is now accessible only from the new `HttpRequest::conn_data()` and `ServiceRequest::conn_data()` methods. [#2491]
|
||||||
|
* `impl Clone` for `RequestHead`. [#2487]
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
* Rename `Accept::{mime_precedence => ranked}`. [#2480]
|
* Rename `Accept::{mime_precedence => ranked}`. [#2480]
|
||||||
@ -16,6 +17,7 @@
|
|||||||
* `HttpRequest::url_for` no longer constructs URLs with query or fragment components. [#2430]
|
* `HttpRequest::url_for` no longer constructs URLs with query or fragment components. [#2430]
|
||||||
* Remove `B` (body) type parameter on `App`. [#2493]
|
* Remove `B` (body) type parameter on `App`. [#2493]
|
||||||
* Add `B` (body) type parameter on `Scope`. [#2492]
|
* Add `B` (body) type parameter on `Scope`. [#2492]
|
||||||
|
* Request-local data container is no longer part of a `RequestHead`. Instead it is a distinct part of a `Request`. [#2487]
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
* Accept wildcard `*` items in `AcceptLanguage`. [#2480]
|
* Accept wildcard `*` items in `AcceptLanguage`. [#2480]
|
||||||
@ -28,6 +30,7 @@
|
|||||||
[#2482]: https://github.com/actix/actix-web/pull/2482
|
[#2482]: https://github.com/actix/actix-web/pull/2482
|
||||||
[#2484]: https://github.com/actix/actix-web/pull/2484
|
[#2484]: https://github.com/actix/actix-web/pull/2484
|
||||||
[#2485]: https://github.com/actix/actix-web/pull/2485
|
[#2485]: https://github.com/actix/actix-web/pull/2485
|
||||||
|
[#2487]: https://github.com/actix/actix-web/pull/2487
|
||||||
[#2491]: https://github.com/actix/actix-web/pull/2491
|
[#2491]: https://github.com/actix/actix-web/pull/2491
|
||||||
[#2492]: https://github.com/actix/actix-web/pull/2492
|
[#2492]: https://github.com/actix/actix-web/pull/2492
|
||||||
[#2493]: https://github.com/actix/actix-web/pull/2493
|
[#2493]: https://github.com/actix/actix-web/pull/2493
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
use std::{convert::Infallible, io};
|
use std::{convert::Infallible, io};
|
||||||
|
|
||||||
use actix_http::{HttpService, Response, StatusCode};
|
use actix_http::{
|
||||||
|
header::HeaderValue, HttpMessage, HttpService, Request, Response, StatusCode,
|
||||||
|
};
|
||||||
use actix_server::Server;
|
use actix_server::Server;
|
||||||
use http::header::HeaderValue;
|
|
||||||
|
|
||||||
#[actix_rt::main]
|
#[actix_rt::main]
|
||||||
async fn main() -> io::Result<()> {
|
async fn main() -> io::Result<()> {
|
||||||
@ -13,7 +14,10 @@ async fn main() -> io::Result<()> {
|
|||||||
HttpService::build()
|
HttpService::build()
|
||||||
.client_timeout(1000)
|
.client_timeout(1000)
|
||||||
.client_disconnect(1000)
|
.client_disconnect(1000)
|
||||||
.finish(|req| async move {
|
.on_connect_ext(|_, ext| {
|
||||||
|
ext.insert(42u32);
|
||||||
|
})
|
||||||
|
.finish(|req: Request| async move {
|
||||||
log::info!("{:?}", req);
|
log::info!("{:?}", req);
|
||||||
|
|
||||||
let mut res = Response::build(StatusCode::OK);
|
let mut res = Response::build(StatusCode::OK);
|
||||||
@ -22,6 +26,12 @@ async fn main() -> io::Result<()> {
|
|||||||
HeaderValue::from_static("dummy value!"),
|
HeaderValue::from_static("dummy value!"),
|
||||||
));
|
));
|
||||||
|
|
||||||
|
let forty_two = req.extensions().get::<u32>().unwrap().to_string();
|
||||||
|
res.insert_header((
|
||||||
|
"x-forty-two",
|
||||||
|
HeaderValue::from_str(&forty_two).unwrap(),
|
||||||
|
));
|
||||||
|
|
||||||
Ok::<_, Infallible>(res.body("Hello world!"))
|
Ok::<_, Infallible>(res.body("Hello world!"))
|
||||||
})
|
})
|
||||||
.tcp()
|
.tcp()
|
||||||
|
@ -44,7 +44,7 @@ pub trait Head: Default + 'static {
|
|||||||
F: FnOnce(&MessagePool<Self>) -> R;
|
F: FnOnce(&MessagePool<Self>) -> R;
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug, Clone)]
|
||||||
pub struct RequestHead {
|
pub struct RequestHead {
|
||||||
pub method: Method,
|
pub method: Method,
|
||||||
pub uri: Uri,
|
pub uri: Uri,
|
||||||
|
Loading…
Reference in New Issue
Block a user