1
0
mirror of https://github.com/actix/actix-website synced 2024-11-27 10:02:57 +01:00

Fixed keep-alive on response example (#316)

* fixed keep-alive on response example

* fixed dead code and unused variable errors
This commit is contained in:
Jonas Fassbender 2023-03-03 16:07:26 +01:00 committed by GitHub
parent 030046e4af
commit 04f6f0bd02
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 5 deletions

View File

@ -97,6 +97,7 @@ Actix Web keeps connections open to wait for subsequent requests.
If the first option above is selected, then keep-alive is enabled for HTTP/1.1 requests if the response does not explicitly disallow it by, for example, setting the [connection type][httpconnectiontype] to `Close` or `Upgrade`. Force closing a connection can be done with [the `force_close()` method on `HttpResponseBuilder`](https://docs.rs/actix-web/4/actix_web/struct.HttpResponseBuilder.html#method.force_close) If the first option above is selected, then keep-alive is enabled for HTTP/1.1 requests if the response does not explicitly disallow it by, for example, setting the [connection type][httpconnectiontype] to `Close` or `Upgrade`. Force closing a connection can be done with [the `force_close()` method on `HttpResponseBuilder`](https://docs.rs/actix-web/4/actix_web/struct.HttpResponseBuilder.html#method.force_close)
> Keep-alive is **off** for HTTP/1.0 and is **on** for HTTP/1.1 and HTTP/2.0. > Keep-alive is **off** for HTTP/1.0 and is **on** for HTTP/1.1 and HTTP/2.0.
<CodeBlock example="server" file="keep_alive_tp.rs" section="example" /> <CodeBlock example="server" file="keep_alive_tp.rs" section="example" />
## Graceful shutdown ## Graceful shutdown

View File

@ -1,11 +1,17 @@
#![allow(dead_code)]
// <example> // <example>
use actix_web::{http, HttpRequest, HttpResponse}; use actix_web::{http, HttpRequest, HttpResponse};
async fn index(req: HttpRequest) -> HttpResponse { async fn index(_req: HttpRequest) -> HttpResponse {
HttpResponse::Ok() let mut resp = HttpResponse::Ok()
.connection_type(http::ConnectionType::Close) // <- Close connection .force_close() // <- Close connection on HttpResponseBuilder
.force_close() // <- Alternative method .finish();
.finish()
// Alternatively close connection on the HttpResponse struct
resp.head_mut().set_connection_type(http::ConnectionType::Close);
resp
} }
// </example> // </example>

View File

@ -1,4 +1,5 @@
pub mod keep_alive; pub mod keep_alive;
pub mod keep_alive_tp;
pub mod signals; pub mod signals;
pub mod ssl; pub mod ssl;
pub mod workers; pub mod workers;