From 114e81680bdee47555bc5ada2e61bd34e7d1ee7e Mon Sep 17 00:00:00 2001 From: Shane Osbourne Date: Wed, 10 Oct 2018 15:51:57 +0200 Subject: [PATCH] fixing middleware fallthrough --- src/lib/presets/m2/handlers/build.rs | 11 ++--------- src/lib/presets/m2/handlers/err_response.rs | 13 +++++++++++++ src/lib/presets/m2/handlers/loaders.rs | 4 ++-- src/lib/presets/m2/handlers/mod.rs | 1 + 4 files changed, 18 insertions(+), 11 deletions(-) create mode 100644 src/lib/presets/m2/handlers/err_response.rs diff --git a/src/lib/presets/m2/handlers/build.rs b/src/lib/presets/m2/handlers/build.rs index c986d9e..44d286a 100644 --- a/src/lib/presets/m2/handlers/build.rs +++ b/src/lib/presets/m2/handlers/build.rs @@ -1,8 +1,8 @@ -use actix_web::http::StatusCode; use actix_web::HttpRequest; use actix_web::HttpResponse; use preset::AppState; use presets::m2::state::gather_state; +use actix_web::http::StatusCode; /// /// This handler will serve up JSON that @@ -25,13 +25,6 @@ pub fn handle(req: &HttpRequest) -> HttpResponse { match output { Ok(t) => HttpResponse::Ok().content_type("application/json").body(t), - Err(e) => HttpResponse::Ok() - .content_type("application/json") - .status(StatusCode::from_u16(500).expect("can set 500 resp code")) - .body( - serde_json::to_string_pretty(&json!({ - "message": e.to_string() - })).unwrap(), - ), + Err(e) => super::err_response::create(e), } } diff --git a/src/lib/presets/m2/handlers/err_response.rs b/src/lib/presets/m2/handlers/err_response.rs new file mode 100644 index 0000000..40f87d4 --- /dev/null +++ b/src/lib/presets/m2/handlers/err_response.rs @@ -0,0 +1,13 @@ +use actix_web::http::StatusCode; +use actix_web::HttpResponse; + +pub fn create(message: String) -> HttpResponse { + HttpResponse::Ok() + .content_type("application/json") + .status(StatusCode::from_u16(500).expect("can set 500 resp code")) + .body( + serde_json::to_string_pretty(&json!({ + "message": message + })).unwrap(), + ) +} \ No newline at end of file diff --git a/src/lib/presets/m2/handlers/loaders.rs b/src/lib/presets/m2/handlers/loaders.rs index f7d6fec..9da6480 100644 --- a/src/lib/presets/m2/handlers/loaders.rs +++ b/src/lib/presets/m2/handlers/loaders.rs @@ -23,7 +23,7 @@ pub fn handle(req: &HttpRequest) -> HttpResponse { }; match output { - Ok(t) => HttpResponse::Ok().content_type("text/plain").body(t), - Err(_e) => HttpResponse::Ok().content_type("text/plain").body("NAH"), + Ok(t) => HttpResponse::Ok().content_type("application/javascript").body(t), + Err(e) => super::err_response::create(e), } } diff --git a/src/lib/presets/m2/handlers/mod.rs b/src/lib/presets/m2/handlers/mod.rs index af5badc..5ab0de6 100644 --- a/src/lib/presets/m2/handlers/mod.rs +++ b/src/lib/presets/m2/handlers/mod.rs @@ -7,3 +7,4 @@ pub mod req_capture; pub mod requests; pub mod seed; pub mod serve_r_js; +pub mod err_response;