Browse Source

rm builder

pull/25/head
Alexey Velikiy 3 years ago
parent
commit
cf03b29075
  1. 20
      server/src/api.rs

20
server/src/api.rs

@ -1,8 +1,8 @@
use hastic::services::user_service;
use warp::filters::method::post;
use warp::http::HeaderValue;
use warp::hyper::Body;
use warp::{body, Rejection, Reply};
use warp::hyper::{Body, StatusCode};
use warp::{body, options, Rejection, Reply};
use warp::{http::Response, Filter};
mod auth;
@ -12,6 +12,11 @@ use serde::Serialize;
use parking_lot::RwLock;
use std::sync::Arc;
#[derive(Serialize)]
struct Options {
message: String,
}
pub struct API {
user_service: Arc<RwLock<user_service::UserService>>,
}
@ -40,10 +45,17 @@ impl API {
}
pub async fn serve(&self) {
let lg = warp::any().map(move || API::builder("not found"));
let not_found =
warp::any().map(|| warp::reply::with_status("Not found", StatusCode::NOT_FOUND));
let options = warp::any().and(options()).map(|| {
API::json(&Options {
message: "ok".to_owned(),
})
});
let login = auth::get_route(self.user_service.clone());
println!("Start server on 8000 port");
warp::serve(login.or(lg)).run(([127, 0, 0, 1], 8000)).await;
let routes = login.or(options).or(not_found);
warp::serve(routes).run(([127, 0, 0, 1], 8000)).await;
}
}

Loading…
Cancel
Save