Generic request body (#22)

Fixes #21
This commit is contained in:
David Pedersen
2021-06-19 12:50:33 +02:00
committed by GitHub
parent 6a16cd40ca
commit 356f1c8424
20 changed files with 692 additions and 401 deletions
+4 -1
View File
@@ -21,7 +21,10 @@ async fn main() {
// run it with hyper
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
type ConnectionPool = Pool<PostgresConnectionManager<NoTls>>;
@@ -37,7 +37,10 @@ async fn main() {
// Run our application
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
/// Handler for `GET /users/:id`.
+5 -3
View File
@@ -1,5 +1,4 @@
use awebframework::prelude::*;
use http::Request;
use serde::Deserialize;
use std::net::SocketAddr;
@@ -14,10 +13,13 @@ async fn main() {
// run it with hyper
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
async fn show_form(_req: Request<Body>) -> response::Html<&'static str> {
async fn show_form() -> response::Html<&'static str> {
response::Html(
r#"
<!doctype html>
+4 -1
View File
@@ -12,7 +12,10 @@ async fn main() {
// run it
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
async fn handler() -> response::Html<&'static str> {
+5 -2
View File
@@ -58,7 +58,10 @@ async fn main() {
// Run our app with hyper
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
type SharedState = Arc<RwLock<State>>;
@@ -98,7 +101,7 @@ async fn list_keys(Extension(state): Extension<SharedState>) -> String {
.join("\n")
}
fn admin_routes() -> BoxRoute {
fn admin_routes() -> BoxRoute<hyper::Body> {
async fn delete_all_keys(Extension(state): Extension<SharedState>) {
state.write().unwrap().db.clear();
}
+4 -1
View File
@@ -20,5 +20,8 @@ async fn main() {
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
+4 -1
View File
@@ -13,7 +13,10 @@ async fn main() {
// run it
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
async fn greet(params: extract::UrlParamsMap) -> impl IntoResponse {
+9 -3
View File
@@ -14,7 +14,10 @@ async fn main() {
// run it
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
async fn handler(version: Version) {
@@ -29,10 +32,13 @@ enum Version {
}
#[async_trait]
impl FromRequest for Version {
impl<B> FromRequest<B> for Version
where
B: Send,
{
type Rejection = Response<Body>;
async fn from_request(req: &mut Request<Body>) -> Result<Self, Self::Rejection> {
async fn from_request(req: &mut Request<B>) -> Result<Self, Self::Rejection> {
let params = extract::UrlParamsMap::from_request(req)
.await
.map_err(IntoResponse::into_response)?;
+4 -1
View File
@@ -51,7 +51,10 @@ async fn main() {
// run it with hyper
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
tracing::debug!("listening on {}", addr);
app.serve(&addr).await.unwrap();
hyper::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
async fn handle_socket(mut socket: WebSocket) {