pub struct HttpClientOptions {Show 18 fields
pub base_url: Option<Url>,
pub default_headers: HeaderMap,
pub timeouts: HttpTimeoutOptions,
pub proxy: ProxyOptions,
pub logging: HttpLoggingOptions,
pub error_response_preview_limit: usize,
pub user_agent: Option<String>,
pub max_redirects: Option<usize>,
pub pool_idle_timeout: Option<Duration>,
pub pool_max_idle_per_host: Option<usize>,
pub use_env_proxy: bool,
pub retry: HttpRetryOptions,
pub sensitive_headers: SensitiveHttpHeaders,
pub ipv4_only: bool,
pub sse_json_mode: SseJsonMode,
pub sse_done_marker_policy: DoneMarkerPolicy,
pub sse_max_line_bytes: usize,
pub sse_max_frame_bytes: usize,
}Expand description
Aggregated settings for crate::HttpClient and crate::HttpClientFactory.
Fields§
§base_url: Option<Url>Optional base URL.
default_headers: HeaderMapDefault request headers.
timeouts: HttpTimeoutOptionsTimeout options.
proxy: ProxyOptionsProxy options.
logging: HttpLoggingOptionsLogging options.
error_response_preview_limit: usizeMaximum bytes captured into HttpError.response_body_preview for non-success responses.
user_agent: Option<String>Optional default User-Agent header sent by reqwest.
max_redirects: Option<usize>Optional redirect limit applied by reqwest.
pool_idle_timeout: Option<Duration>Optional connection pool idle-time timeout.
pool_max_idle_per_host: Option<usize>Optional maximum idle connections per host.
use_env_proxy: boolWhether to inherit proxy settings from environment variables when explicit proxy config is disabled.
retry: HttpRetryOptionsRetry options.
sensitive_headers: SensitiveHttpHeadersSensitive headers for masking.
ipv4_only: boolWhether IPv4-only DNS behavior is requested.
sse_json_mode: SseJsonModeDefault JSON handling mode used by crate::HttpResponse::sse_chunks.
sse_done_marker_policy: DoneMarkerPolicyDefault done-marker policy used by crate::HttpResponse::sse_chunks.
sse_max_line_bytes: usizeDefault maximum bytes for one SSE line.
sse_max_frame_bytes: usizeDefault maximum bytes for one SSE frame.
Implementations§
Source§impl HttpClientOptions
impl HttpClientOptions
Sourcepub fn set_base_url(
&mut self,
base_url: &str,
) -> Result<&mut Self, HttpConfigError>
pub fn set_base_url( &mut self, base_url: &str, ) -> Result<&mut Self, HttpConfigError>
Parses and sets the base URL used to resolve relative request paths.
§Parameters
base_url: Absolute base URL string.
§Returns
Ok(self) or HttpConfigError if the URL is invalid.
Sourcepub fn add_header(&mut self, name: &str, value: &str) -> HttpResult<&mut Self>
pub fn add_header(&mut self, name: &str, value: &str) -> HttpResult<&mut Self>
Sourcepub fn add_headers(&mut self, headers: &[(&str, &str)]) -> HttpResult<&mut Self>
pub fn add_headers(&mut self, headers: &[(&str, &str)]) -> HttpResult<&mut Self>
Sourcepub fn from_config<R>(config: &R) -> Result<Self, HttpConfigError>where
R: ConfigReader + ?Sized,
pub fn from_config<R>(config: &R) -> Result<Self, HttpConfigError>where
R: ConfigReader + ?Sized,
Creates HttpClientOptions from config using relative keys.
§Parameters
config: AnyConfigReader(fullqubit_config::Configor aqubit_config::ConfigPrefixViewfromConfigReader::prefix_view).
§Returns
Parsed options or HttpConfigError.
Sourcepub fn validate(&self) -> Result<(), HttpConfigError>
pub fn validate(&self) -> Result<(), HttpConfigError>
Runs ProxyOptions::validate, HttpLoggingOptions::validate, retry validation,
and SSE limit validation.
§Returns
Ok(()) or the first sub-validator error.
Trait Implementations§
Source§impl Clone for HttpClientOptions
impl Clone for HttpClientOptions
Source§fn clone(&self) -> HttpClientOptions
fn clone(&self) -> HttpClientOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for HttpClientOptions
impl Debug for HttpClientOptions
Source§impl Default for HttpClientOptions
impl Default for HttpClientOptions
Source§fn default() -> Self
fn default() -> Self
Default: no base URL, empty headers, default timeouts/proxy/logging, default sensitive headers, IPv4-only off, lenient SSE JSON mode, default SSE done-marker policy, and crate default SSE line/frame limits.
§Returns
Default HttpClientOptions.
Auto Trait Implementations§
impl Freeze for HttpClientOptions
impl RefUnwindSafe for HttpClientOptions
impl Send for HttpClientOptions
impl Sync for HttpClientOptions
impl Unpin for HttpClientOptions
impl UnsafeUnpin for HttpClientOptions
impl UnwindSafe for HttpClientOptions
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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, D> IntoConfigDefault<T> for Dwhere
D: IntoValueDefault<T>,
impl<T, D> IntoConfigDefault<T> for Dwhere
D: IntoValueDefault<T>,
Source§fn into_config_default(self) -> T
fn into_config_default(self) -> T
T.