pub struct Response {
pub headers: Headers,
pub http_version: Vec<u8>,
pub reason: Vec<u8>,
pub status_code: u16,
}Expand description
HTTP response head event.
The same struct is used for informational and final responses. Use the
range-checked constructors or Event::informational_response /
Event::normal_response when that distinction matters.
Fields§
§headers: HeadersNormalized response headers with original casing preserved.
http_version: Vec<u8>HTTP version without the HTTP/ prefix, for example 1.1.
reason: Vec<u8>Reason phrase bytes.
status_code: u16Three-digit HTTP status code.
Implementations§
Source§impl Response
impl Response
Sourcepub fn new<R, V>(
status_code: u16,
headers: Headers,
reason: R,
http_version: V,
) -> Result<Self, ProtocolError>
pub fn new<R, V>( status_code: u16, headers: Headers, reason: R, http_version: V, ) -> Result<Self, ProtocolError>
Builds and validates a response with an explicit HTTP version.
Sourcepub fn new_http11<R>(
status_code: u16,
headers: Headers,
reason: R,
) -> Result<Self, ProtocolError>
pub fn new_http11<R>( status_code: u16, headers: Headers, reason: R, ) -> Result<Self, ProtocolError>
Builds and validates an HTTP/1.1 response.
Sourcepub fn new_informational<R, V>(
status_code: u16,
headers: Headers,
reason: R,
http_version: V,
) -> Result<Self, ProtocolError>
pub fn new_informational<R, V>( status_code: u16, headers: Headers, reason: R, http_version: V, ) -> Result<Self, ProtocolError>
Builds and validates an informational response.
The status code must be in 100..=199.
Sourcepub fn new_informational_http11<R>(
status_code: u16,
headers: Headers,
reason: R,
) -> Result<Self, ProtocolError>
pub fn new_informational_http11<R>( status_code: u16, headers: Headers, reason: R, ) -> Result<Self, ProtocolError>
Builds and validates an HTTP/1.1 informational response.
The status code must be in 100..=199.
Sourcepub fn new_final<R, V>(
status_code: u16,
headers: Headers,
reason: R,
http_version: V,
) -> Result<Self, ProtocolError>
pub fn new_final<R, V>( status_code: u16, headers: Headers, reason: R, http_version: V, ) -> Result<Self, ProtocolError>
Builds and validates a final response.
The status code must be >= 200.
Sourcepub fn new_final_http11<R>(
status_code: u16,
headers: Headers,
reason: R,
) -> Result<Self, ProtocolError>
pub fn new_final_http11<R>( status_code: u16, headers: Headers, reason: R, ) -> Result<Self, ProtocolError>
Builds and validates an HTTP/1.1 final response.
The status code must be >= 200.
Sourcepub fn validate(&self) -> Result<(), ProtocolError>
pub fn validate(&self) -> Result<(), ProtocolError>
Validates response status code, reason phrase, and HTTP version.