pub struct ResponseBuilder { /* private fields */ }Expand description
An HTTP response builder
This type can be used to construct an instance of Response through a
builder-like pattern.
Implementations§
Source§impl ResponseBuilder
impl ResponseBuilder
Sourcepub fn new(status: StatusCode) -> Self
pub fn new(status: StatusCode) -> Self
Create response builder
Sourcepub fn status(&mut self, status: StatusCode) -> &mut Self
pub fn status(&mut self, status: StatusCode) -> &mut Self
Set HTTP status code of this response.
Sourcepub fn header<K, V>(&mut self, key: K, value: V) -> &mut Selfwhere
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
pub fn header<K, V>(&mut self, key: K, value: V) -> &mut Selfwhere
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
Append a header to existing headers.
use ntex::http::{header, Request, Response};
fn index(req: Request) -> Response {
Response::Ok()
.header("X-TEST", "value")
.header(header::CONTENT_TYPE, "application/json")
.finish()
}Sourcepub fn set_header<K, V>(&mut self, key: K, value: V) -> &mut Selfwhere
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
pub fn set_header<K, V>(&mut self, key: K, value: V) -> &mut Selfwhere
HeaderName: TryFrom<K>,
HeaderValue: TryFrom<V>,
<HeaderName as TryFrom<K>>::Error: Into<HttpError>,
<HeaderValue as TryFrom<V>>::Error: Into<HttpError>,
Set a header.
use ntex::http::{header, Request, Response};
fn index(req: Request) -> Response {
Response::Ok()
.set_header("X-TEST", "value")
.set_header(header::CONTENT_TYPE, "application/json")
.finish()
}Sourcepub fn reason(&mut self, reason: &'static str) -> &mut Self
pub fn reason(&mut self, reason: &'static str) -> &mut Self
Set the custom reason for the response.
Sourcepub fn keep_alive(&mut self) -> &mut Self
pub fn keep_alive(&mut self) -> &mut Self
Set connection type to KeepAlive
Sourcepub fn force_close(&mut self) -> &mut Self
pub fn force_close(&mut self) -> &mut Self
Force close connection, even if it is marked as keep-alive
Sourcepub fn no_chunking(&mut self) -> &mut Self
pub fn no_chunking(&mut self) -> &mut Self
Disable chunked transfer encoding for HTTP/1.1 streaming responses.
Sourcepub fn content_type<V>(&mut self, value: V) -> &mut Self
pub fn content_type<V>(&mut self, value: V) -> &mut Self
Set response content type.
Sourcepub fn content_length(&mut self, len: u64) -> &mut Self
pub fn content_length(&mut self, len: u64) -> &mut Self
Set content length.
Set a cookie.
use coo_kie as cookie;
use ntex::http::{Request, Response};
fn index(req: Request) -> Response {
Response::Ok()
.cookie(
cookie::Cookie::build(("name", "value"))
.domain("www.rust-lang.org")
.path("/")
.secure(true)
.http_only(true)
)
.finish()
}Remove cookie.
use ntex::http::{Request, Response, HttpMessage};
fn index(req: Request) -> Response {
let mut builder = Response::Ok();
if let Some(ref cookie) = req.cookie("name") {
builder.del_cookie(cookie);
}
builder.finish()
}Sourcepub fn extensions(&self) -> Ref<'_, Extensions>
pub fn extensions(&self) -> Ref<'_, Extensions>
Responses extensions.
Sourcepub fn extensions_mut(&self) -> RefMut<'_, Extensions>
pub fn extensions_mut(&self) -> RefMut<'_, Extensions>
Mutable reference to a the response’s extensions.
Sourcepub fn body<B: Into<Body>>(&mut self, body: B) -> Response
pub fn body<B: Into<Body>>(&mut self, body: B) -> Response
Set a body and generate Response.
ResponseBuilder can not be used after this call.
Sourcepub fn message_body<B>(&mut self, body: B) -> Response<B>
pub fn message_body<B>(&mut self, body: B) -> Response<B>
Set a body and generate Response.
ResponseBuilder can not be used after this call.
Sourcepub fn streaming<S, E>(&mut self, stream: S) -> Response
pub fn streaming<S, E>(&mut self, stream: S) -> Response
Set a streaming body and generate Response.
ResponseBuilder can not be used after this call.
Sourcepub fn json<T: Serialize>(&mut self, value: &T) -> Response
pub fn json<T: Serialize>(&mut self, value: &T) -> Response
Set a json body and generate Response.
ResponseBuilder can not be used after this call.
Sourcepub fn finish(&mut self) -> Response
pub fn finish(&mut self) -> Response
Set an empty body and generate Response.
ResponseBuilder can not be used after this call.
Sourcepub fn take(&mut self) -> ResponseBuilder
pub fn take(&mut self) -> ResponseBuilder
This method construct new ResponseBuilder
Trait Implementations§
Source§impl BodyEncoding for HttpResponseBuilder
impl BodyEncoding for HttpResponseBuilder
Source§fn get_encoding(&self) -> Option<ContentEncoding>
fn get_encoding(&self) -> Option<ContentEncoding>
Source§fn encoding(&mut self, encoding: ContentEncoding) -> &mut Self
fn encoding(&mut self, encoding: ContentEncoding) -> &mut Self
Source§impl Debug for ResponseBuilder
impl Debug for ResponseBuilder
Source§impl<'a> From<&'a ResponseHead> for ResponseBuilder
Convert ResponseHead to a ResponseBuilder
impl<'a> From<&'a ResponseHead> for ResponseBuilder
Convert ResponseHead to a ResponseBuilder
Source§fn from(head: &'a ResponseHead) -> ResponseBuilder
fn from(head: &'a ResponseHead) -> ResponseBuilder
Source§impl<B> From<Response<B>> for ResponseBuilder
Convert Response to a ResponseBuilder. Body get dropped.
impl<B> From<Response<B>> for ResponseBuilder
Convert Response to a ResponseBuilder. Body get dropped.