1 unstable release
Uses old Rust 2015
0.1.0 | Sep 11, 2017 |
---|
#21 in #rest-api
40KB
1K
SLoC
Resty
Resty - a simple JSON REST-API framework for Rust.
Examples
extern crate futures;
extern crate resty;
#[macro_use]
extern crate serde_derive;
use futures::Future;
#[derive(Deserialize, Serialize)]
struct Call {
pub test: u64,
}
fn main() {
let mut server = resty::Router::new();
server.get("/", |_| {
Ok("Hello World!")
});
server.post("/call", |request| {
// Deserialize payload
request.json().map(|mut call: Call| {
call.test += 1;
// And return the same payload as a response
call
})
});
let listening = server.bind("localhost:3000").unwrap();
listening.wait()
}
For more see examples folder.
TODO
General
-
get_*()
for dynamic params. - Auto handle HEAD requests.
- CORS support
- Middlewares
- Cache Control
- Auto-derive
Into<Router>
for structs. - Query parameters
- Optional parameters
- Parameters with /
Dependencies
~10MB
~179K SLoC