#[non_exhaustive]pub struct RequestError { /* private fields */ }Expand description
A request-level JMAP error response: HTTP status code + JMAP error body.
Used when an error occurs before method dispatch (e.g., parse failure,
unknown capability). Derives the HTTP status from the error type via
error_status. Use request_error to construct.
Call RequestError::into_response to produce an http::Response<String>
with the RFC 7807 Problem Details body. Any HTTP framework that works with
the http crate (axum, hyper, warp, etc.) accepts this directly.
Implementations§
Source§impl RequestError
impl RequestError
Sourcepub fn into_response(self) -> Response<String>
pub fn into_response(self) -> Response<String>
Convert into an HTTP response with an RFC 7807 Problem Details body.
The Content-Type is application/problem+json. The body is a JSON
object with at minimum "type" (full URN) and "status" fields per
RFC 7807 §3.1, plus "limit" for limit errors (RFC 8620 §3.6.1).
Trait Implementations§
Source§impl Debug for RequestError
impl Debug for RequestError
Source§impl Display for RequestError
impl Display for RequestError
Source§impl Error for RequestError
impl Error for RequestError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<JmapError> for RequestError
impl From<JmapError> for RequestError
Source§fn from(err: JmapError) -> Self
fn from(err: JmapError) -> Self
Convert a JmapError into a RequestError, deriving the HTTP
status code automatically via error_status.
Enables ? propagation in functions returning Result<_, RequestError>.
Pass only request-level errors; see error_status for the safe list.