pub struct HttpResponse { /* private fields */ }Expand description
HTTP Response builder providing Laravel-like response creation
Implementations§
Source§impl HttpResponse
impl HttpResponse
pub fn new() -> Self
Sourcepub fn bytes(body: impl Into<Bytes>) -> Self
pub fn bytes(body: impl Into<Bytes>) -> Self
Create a response with raw binary data.
No default Content-Type is set; the caller must add one via .header().
Sourcepub fn download(body: impl Into<Bytes>, filename: &str) -> Self
pub fn download(body: impl Into<Bytes>, filename: &str) -> Self
Create a file download response with Content-Disposition header.
Auto-detects Content-Type from the filename extension using mime_guess.
Falls back to application/octet-stream for unknown extensions.
The filename is sanitized against header injection (control characters
and quote marks are stripped).
Sourcepub fn status_code(&self) -> u16
pub fn status_code(&self) -> u16
Get the current HTTP status code
Sourcepub fn body(&self) -> &str
pub fn body(&self) -> &str
Get the response body as a string slice.
Returns an empty string for non-UTF-8 bodies (e.g. binary data).
Use body_bytes() to access raw binary data.
Sourcepub fn body_bytes(&self) -> &Bytes
pub fn body_bytes(&self) -> &Bytes
Get the response body as raw bytes.
Sourcepub fn header(self, name: impl Into<String>, value: impl Into<String>) -> Self
pub fn header(self, name: impl Into<String>, value: impl Into<String>) -> Self
Add a header to the response
Sourcepub fn into_hyper(self) -> Response<Full<Bytes>>
pub fn into_hyper(self) -> Response<Full<Bytes>>
Convert to hyper response
Trait Implementations§
Source§impl Default for HttpResponse
impl Default for HttpResponse
Source§impl From<AppError> for HttpResponse
Auto-convert AppError to HttpResponse
impl From<AppError> for HttpResponse
Auto-convert AppError to HttpResponse
This enables using the ? operator in controller handlers with AppError.
Source§fn from(err: AppError) -> HttpResponse
fn from(err: AppError) -> HttpResponse
Source§impl From<AuthorizationError> for HttpResponse
impl From<AuthorizationError> for HttpResponse
Source§fn from(err: AuthorizationError) -> HttpResponse
fn from(err: AuthorizationError) -> HttpResponse
Source§impl From<FrameworkError> for HttpResponse
Auto-convert FrameworkError to HttpResponse
impl From<FrameworkError> for HttpResponse
Auto-convert FrameworkError to HttpResponse
This enables using the ? operator in controller handlers to propagate
framework errors as appropriate HTTP responses.
When a hint is available (via FrameworkError::hint()), the JSON response
includes a "hint" field with actionable guidance for the developer.
Source§fn from(err: FrameworkError) -> HttpResponse
fn from(err: FrameworkError) -> HttpResponse
Source§impl From<ParamError> for HttpResponse
impl From<ParamError> for HttpResponse
Source§fn from(err: ParamError) -> HttpResponse
fn from(err: ParamError) -> HttpResponse
Auto Trait Implementations§
impl !Freeze for HttpResponse
impl RefUnwindSafe for HttpResponse
impl Send for HttpResponse
impl Sync for HttpResponse
impl Unpin for HttpResponse
impl UnsafeUnpin for HttpResponse
impl UnwindSafe for HttpResponse
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more