pub struct Status {
pub status_code: StatusCode,
pub message: String,
pub expose: bool,
}Expand description
The Status of roa.
Fields§
§status_code: StatusCodeStatusCode will be responded to client if Error is thrown by the top middleware.
§Example
use roa_core::{App, Context, Next, Result, MiddlewareExt, throw};
use roa_core::http::StatusCode;
let app = App::new().gate(gate).end(end);
async fn gate(ctx: &mut Context, next: Next<'_>) -> Result {
ctx.resp.status = StatusCode::OK;
next.await // not caught
}
async fn end(ctx: &mut Context) -> Result {
throw!(StatusCode::IM_A_TEAPOT, "I'm a teapot!"); // throw
unreachable!()
}message: StringData will be written to response body if self.expose is true. StatusCode will be responded to client if Error is thrown by the top middleware.
§Example
use roa_core::{App, Context, Result, Status};
use roa_core::http::StatusCode;
let app = App::new().end(end);
async fn end(ctx: &mut Context) -> Result {
Err(Status::new(StatusCode::IM_A_TEAPOT, "I'm a teapot!", false)) // message won't be exposed to user.
}
expose: boolif message exposed.
Implementations§
Trait Implementations§
impl Eq for Status
impl StructuralPartialEq for Status
Auto Trait Implementations§
impl Freeze for Status
impl RefUnwindSafe for Status
impl Send for Status
impl Sync for Status
impl Unpin for Status
impl UnwindSafe for Status
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<S, T> EndpointExt<S> for Twhere
T: for<'a> Endpoint<'a, S>,
impl<S, T> EndpointExt<S> for Twhere
T: for<'a> Endpoint<'a, S>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.