mirror of
https://github.com/actix/actix-extras.git
synced 2024-11-27 17:22:57 +01:00
readme
This commit is contained in:
parent
9b7f2395e5
commit
3f253365b7
53
README.md
53
README.md
@ -20,3 +20,56 @@ To use `actix-http`, add this to your `Cargo.toml`:
|
|||||||
actix-http = { git = "https://github.com/fafhrd91/actix-http.git" }
|
actix-http = { git = "https://github.com/fafhrd91/actix-http.git" }
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Example
|
||||||
|
|
||||||
|
```rust
|
||||||
|
extern crate actix;
|
||||||
|
extern crate actix_http;
|
||||||
|
extern crate futures;
|
||||||
|
use std::net;
|
||||||
|
use std::str::FromStr;
|
||||||
|
|
||||||
|
use actix::prelude::*;
|
||||||
|
use actix_http::*;
|
||||||
|
|
||||||
|
// Route
|
||||||
|
struct MyRoute;
|
||||||
|
|
||||||
|
impl Actor for MyRoute {
|
||||||
|
type Context = HttpContext<Self>;
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Route for MyRoute {
|
||||||
|
type State = ();
|
||||||
|
|
||||||
|
fn request(req: HttpRequest,
|
||||||
|
payload: Option<Payload>,
|
||||||
|
ctx: &mut HttpContext<Self>) -> HttpMessage<Self>
|
||||||
|
{
|
||||||
|
Self::http_reply(req, httpcodes::HTTPOk)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
let system = System::new("test".to_owned());
|
||||||
|
|
||||||
|
// create routing map with `MyRoute` route
|
||||||
|
let mut routes = RoutingMap::default();
|
||||||
|
routes.add_resource("/")
|
||||||
|
.post::<MyRoute>();
|
||||||
|
|
||||||
|
// start http server
|
||||||
|
let http = HttpServer::new(routes);
|
||||||
|
http.serve::<()>(
|
||||||
|
&net::SocketAddr::from_str("127.0.0.1:8880").unwrap()).unwrap();
|
||||||
|
|
||||||
|
// stop system
|
||||||
|
Arbiter::handle().spawn_fn(|| {
|
||||||
|
Arbiter::system().send(msgs::SystemExit(0));
|
||||||
|
futures::future::ok(())
|
||||||
|
});
|
||||||
|
|
||||||
|
system.run();
|
||||||
|
println!("Done");
|
||||||
|
}
|
||||||
|
```
|
||||||
|
Loading…
Reference in New Issue
Block a user