pub struct ClientBuilder { /* private fields */ }Expand description
Builder for Client.
Implementations§
Source§impl ClientBuilder
impl ClientBuilder
pub fn new() -> ClientBuilder
pub fn base_url(self, base_url: impl AsRef<str>) -> Result<ClientBuilder, Error>
pub fn timeout(self, timeout: Duration) -> ClientBuilder
pub fn retry(self, policy: RetryPolicy) -> ClientBuilder
pub fn auth(self, auth: Auth) -> ClientBuilder
pub fn default_header( self, key: impl AsRef<str>, value: impl AsRef<str>, ) -> Result<ClientBuilder, Error>
pub fn hooks(self, hooks: Hooks) -> ClientBuilder
pub fn plugin<P>(self, plugin: P) -> ClientBuilderwhere
P: Plugin + 'static,
pub fn reqwest_client(self, client: Client) -> ClientBuilder
Sourcepub fn backend(self, backend: Arc<dyn HttpBackend>) -> ClientBuilder
pub fn backend(self, backend: Arc<dyn HttpBackend>) -> ClientBuilder
Use a custom HTTP backend (for testing or alternate transports).
Sourcepub fn max_in_flight(self, limit: usize) -> ClientBuilder
pub fn max_in_flight(self, limit: usize) -> ClientBuilder
Limits how many requests this client may have in flight at once (including retries).
Implemented with a tokio semaphore in the core client. This counts the full request
lifecycle (hooks and retries), not just the transport hop. For wire-level limits only,
use [Self::transport_stack] with Tower’s ConcurrencyLimitLayer
(feature tower) instead of—or deliberately alongside—this setting.
Sourcepub fn json_parser<F>(self, f: F) -> ClientBuilder
pub fn json_parser<F>(self, f: F) -> ClientBuilder
Sets a custom JSON parser for all responses from this client.
See crate::json_parser for the two-step Bytes → Value → T pipeline vs the
default single-step fast path, and Response::into_json_with
for per-response Bytes → T without a global parser.
Sourcepub fn json_parser_fn(
self,
parser: Arc<dyn Fn(&Bytes) -> Result<Value, String> + Sync + Send>,
) -> ClientBuilder
pub fn json_parser_fn( self, parser: Arc<dyn Fn(&Bytes) -> Result<Value, String> + Sync + Send>, ) -> ClientBuilder
Sets a custom JSON parser from an existing JsonParserFn.