mirror of
https://github.com/openharmony/third_party_rust_http.git
synced 2026-07-19 22:53:59 -04:00
Add headers/headers_mut accessors. (#293)
This commit is contained in:
+30
-1
@@ -565,7 +565,6 @@ impl<T> Request<T> {
|
||||
&mut self.head.headers
|
||||
}
|
||||
|
||||
|
||||
/// Returns a reference to the associated extensions.
|
||||
///
|
||||
/// # Examples
|
||||
@@ -940,6 +939,36 @@ impl Builder {
|
||||
}
|
||||
}
|
||||
|
||||
/// Get header on this request builder.
|
||||
/// when builder has error returns None
|
||||
///
|
||||
/// # Example
|
||||
///
|
||||
/// ```
|
||||
/// # use http::*;
|
||||
/// # use http::header::HeaderValue;
|
||||
/// # use http::request::Builder;
|
||||
/// let mut req = Request::builder();
|
||||
/// {
|
||||
/// let headers = req.headers_mut().unwrap();
|
||||
/// headers.insert("Accept", HeaderValue::from_static("text/html"));
|
||||
/// headers.insert("X-Custom-Foo", HeaderValue::from_static("bar"));
|
||||
/// }
|
||||
/// let headers = req.headers_ref().unwrap();
|
||||
/// assert_eq!( headers["Accept"], "text/html" );
|
||||
/// assert_eq!( headers["X-Custom-Foo"], "bar" );
|
||||
/// ```
|
||||
pub fn headers_mut(&mut self) -> Option<&mut HeaderMap<HeaderValue>> {
|
||||
if self.err.is_some() {
|
||||
return None;
|
||||
}
|
||||
match self.head
|
||||
{
|
||||
Some(ref mut head) => Some(&mut head.headers),
|
||||
None => None
|
||||
}
|
||||
}
|
||||
|
||||
/// Adds an extension to this builder
|
||||
///
|
||||
/// # Examples
|
||||
|
||||
@@ -630,6 +630,63 @@ impl Builder {
|
||||
self
|
||||
}
|
||||
|
||||
/// Get header on this response builder.
|
||||
/// when builder has error returns None
|
||||
///
|
||||
/// # Example
|
||||
///
|
||||
/// ```
|
||||
/// # use http::*;
|
||||
/// # use http::header::HeaderValue;
|
||||
/// # use http::response::Builder;
|
||||
/// let mut res = Response::builder();
|
||||
/// res.header("Accept", "text/html")
|
||||
/// .header("X-Custom-Foo", "bar");
|
||||
/// let headers = res.headers_ref().unwrap();
|
||||
/// assert_eq!( headers["Accept"], "text/html" );
|
||||
/// assert_eq!( headers["X-Custom-Foo"], "bar" );
|
||||
/// ```
|
||||
pub fn headers_ref(&self) -> Option<&HeaderMap<HeaderValue>> {
|
||||
if self.err.is_some() {
|
||||
return None;
|
||||
}
|
||||
match self.head
|
||||
{
|
||||
Some(ref head) => Some(&head.headers),
|
||||
None => None
|
||||
}
|
||||
}
|
||||
|
||||
/// Get header on this response builder.
|
||||
/// when builder has error returns None
|
||||
///
|
||||
/// # Example
|
||||
///
|
||||
/// ```
|
||||
/// # use http::*;
|
||||
/// # use http::header::HeaderValue;
|
||||
/// # use http::response::Builder;
|
||||
/// let mut res = Response::builder();
|
||||
/// {
|
||||
/// let headers = res.headers_mut().unwrap();
|
||||
/// headers.insert("Accept", HeaderValue::from_static("text/html"));
|
||||
/// headers.insert("X-Custom-Foo", HeaderValue::from_static("bar"));
|
||||
/// }
|
||||
/// let headers = res.headers_ref().unwrap();
|
||||
/// assert_eq!( headers["Accept"], "text/html" );
|
||||
/// assert_eq!( headers["X-Custom-Foo"], "bar" );
|
||||
/// ```
|
||||
pub fn headers_mut(&mut self) -> Option<&mut HeaderMap<HeaderValue>> {
|
||||
if self.err.is_some() {
|
||||
return None;
|
||||
}
|
||||
match self.head
|
||||
{
|
||||
Some(ref mut head) => Some(&mut head.headers),
|
||||
None => None
|
||||
}
|
||||
}
|
||||
|
||||
/// Adds an extension to this builder
|
||||
///
|
||||
/// # Examples
|
||||
|
||||
Reference in New Issue
Block a user