1
0
mirror of https://github.com/actix/actix-website synced 2025-02-02 12:19:04 +01:00

Updates 'autoreloading' section

This commit is contained in:
Cameron Dershem 2019-06-17 00:44:38 -04:00
parent 3f95205696
commit 312031a085
4 changed files with 32 additions and 27 deletions

View File

@ -40,33 +40,7 @@ listenfd = "0.3"
Then modify your server code to only invoke `bind` as a fallback:
```rust
extern crate actix_web;
extern crate listenfd;
use listenfd::ListenFd;
use actix_web::{server, App, HttpRequest, Responder};
fn index(_req: &HttpRequest) -> impl Responder {
"Hello World!"
}
fn main() {
let mut listenfd = ListenFd::from_env();
let mut server = server::new(|| {
App::new()
.resource("/", |r| r.f(index))
});
server = if let Some(l) = listenfd.take_tcp_listener(0).unwrap() {
server.listen(l)
} else {
server.bind("127.0.0.1:3000").unwrap()
};
server.run();
}
```
{{< include-example example="autoreload" file="main.rs" section="autoreload" >}}
## Running the Server

View File

@ -16,4 +16,5 @@ exclude = [
"request-handlers",
"async-handlers",
"extractors",
"autoreload",
]

View File

@ -0,0 +1,9 @@
[package]
name = "autoreload"
version = "0.1.0"
authors = ["Cameron Dershem <cameron@pinkhatbeard.com>"]
edition = "2018"
[dependencies]
actix-web = "1.0"
listenfd = "0.3"

View File

@ -0,0 +1,21 @@
// <autoreload>
use actix_web::{web, App, HttpRequest, HttpServer, Responder};
use listenfd::ListenFd;
fn index(_req: HttpRequest) -> impl Responder {
"Hello World!"
}
fn main() {
let mut listenfd = ListenFd::from_env();
let mut server = HttpServer::new(|| App::new().route("/", web::get().to(index)));
server = if let Some(l) = listenfd.take_tcp_listener(0).unwrap() {
server.listen(l).unwrap()
} else {
server.bind("127.0.0.1:3000").unwrap()
};
server.run().unwrap();
}
// </autoreload>