diff --git a/src/api_schema/router.rs b/src/api_schema/router.rs index 60d00e4c..09651d59 100644 --- a/src/api_schema/router.rs +++ b/src/api_schema/router.rs @@ -62,7 +62,7 @@ impl HttpError { impl fmt::Display for HttpError { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - write!(f, "Error {}: {}", self.code, self.message) + write!(f, "{}", self.message) } } diff --git a/src/server/formatter.rs b/src/server/formatter.rs index a4b89888..b7ad5a65 100644 --- a/src/server/formatter.rs +++ b/src/server/formatter.rs @@ -1,7 +1,7 @@ use failure::*; use serde_json::{json, Value}; -use crate::api_schema::router::RpcEnvironment; +use crate::api_schema::router::{HttpError, RpcEnvironment}; use hyper::{Body, Response, StatusCode}; use hyper::header; @@ -52,11 +52,19 @@ fn json_format_result(data: Value, rpcenv: &RpcEnvironment) -> Response
{ fn json_format_error(err: Error) -> Response { - let mut response = Response::new(Body::from(err.to_string())); + let mut response = if let Some(apierr) = err.downcast_ref::