pub struct ClientOptions { /* private fields */ }
Expand description
HTTP client configuration for remote catalogs
Implementations§
Source§impl ClientOptions
impl ClientOptions
Sourcepub fn new() -> Self
pub fn new() -> Self
Create a new ClientOptions
with default values
Sourcepub fn with_user_agent(self, agent: HeaderValue) -> Self
pub fn with_user_agent(self, agent: HeaderValue) -> Self
Sets the User-Agent header to be used by this client
Default is based on the version of this crate
Sourcepub fn with_default_headers(self, headers: HeaderMap) -> Self
pub fn with_default_headers(self, headers: HeaderMap) -> Self
Sets the default headers for every request
Sourcepub fn with_allow_http(self, allow_http: bool) -> Self
pub fn with_allow_http(self, allow_http: bool) -> Self
Sets what protocol is allowed. If allow_http
is :
- false (default): Only HTTPS are allowed
- true: HTTP and HTTPS are allowed
Sourcepub fn with_allow_invalid_certificates(self, allow_insecure: bool) -> Self
pub fn with_allow_invalid_certificates(self, allow_insecure: bool) -> Self
Allows connections to invalid SSL certificates
- false (default): Only valid HTTPS certificates are allowed
- true: All HTTPS certificates are allowed
§Warning
You should think very carefully before using this method. If invalid certificates are trusted, any certificate for any site will be trusted for use. This includes expired certificates. This introduces significant vulnerabilities, and should only be used as a last resort or for testing
Sourcepub fn with_http1_only(self) -> Self
pub fn with_http1_only(self) -> Self
Only use http1 connections
Sourcepub fn with_http2_only(self) -> Self
pub fn with_http2_only(self) -> Self
Only use http2 connections
Sourcepub fn with_proxy_url(self, proxy_url: impl Into<String>) -> Self
pub fn with_proxy_url(self, proxy_url: impl Into<String>) -> Self
Set an HTTP proxy to use for requests
Sourcepub fn with_timeout(self, timeout: Duration) -> Self
pub fn with_timeout(self, timeout: Duration) -> Self
Set a request timeout
The timeout is applied from when the request starts connecting until the response body has finished
Sourcepub fn with_connect_timeout(self, timeout: Duration) -> Self
pub fn with_connect_timeout(self, timeout: Duration) -> Self
Set a timeout for only the connect phase of a Client
Sourcepub fn with_pool_idle_timeout(self, timeout: Duration) -> Self
pub fn with_pool_idle_timeout(self, timeout: Duration) -> Self
Set the pool max idle timeout
This is the length of time an idle connection will be kept alive
Default is 90 seconds
Sourcepub fn with_pool_max_idle_per_host(self, max: usize) -> Self
pub fn with_pool_max_idle_per_host(self, max: usize) -> Self
Set the maximum number of idle connections per host
Default is no limit
Sourcepub fn with_http2_keep_alive_interval(self, interval: Duration) -> Self
pub fn with_http2_keep_alive_interval(self, interval: Duration) -> Self
Sets an interval for HTTP2 Ping frames should be sent to keep a connection alive.
Default is disabled
Sourcepub fn with_http2_keep_alive_timeout(self, interval: Duration) -> Self
pub fn with_http2_keep_alive_timeout(self, interval: Duration) -> Self
Sets a timeout for receiving an acknowledgement of the keep-alive ping.
If the ping is not acknowledged within the timeout, the connection will be closed. Does nothing if http2_keep_alive_interval is disabled.
Default is disabled
Sourcepub fn with_http2_keep_alive_while_idle(self) -> Self
pub fn with_http2_keep_alive_while_idle(self) -> Self
Enable HTTP2 keep alive pings for idle connections
If disabled, keep-alive pings are only sent while there are open request/response streams. If enabled, pings are also sent when no streams are active
Default is disabled
Trait Implementations§
Source§impl Clone for ClientOptions
impl Clone for ClientOptions
Source§fn clone(&self) -> ClientOptions
fn clone(&self) -> ClientOptions
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ClientOptions
impl Debug for ClientOptions
Source§impl Default for ClientOptions
impl Default for ClientOptions
Source§fn default() -> ClientOptions
fn default() -> ClientOptions
Auto Trait Implementations§
impl !Freeze for ClientOptions
impl RefUnwindSafe for ClientOptions
impl Send for ClientOptions
impl Sync for ClientOptions
impl Unpin for ClientOptions
impl UnwindSafe for ClientOptions
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> 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