Skip to main content

Crate rp_supabase_http

Crate rp_supabase_http 

Source
Expand description

§rp-supabase-http

Bounded retries for explicit HTTP 429 responses. Shared by the Supabase client crates.

RetryPolicy::default() permits two additional attempts for GET, HEAD and OPTIONS. The exponential delay starts at 200 ms and stops at 30 seconds. Retry-After accepts seconds or an HTTP date. A server delay above the configured maximum returns the 429 unchanged. The client never shortens that delay.

RetryPolicy::none() disables retries. retry_non_idempotent(true) permits replayable mutation bodies. Enable it only when the endpoint rejects a rate-limited request before performing any side effect.

Transport failures, other status codes, and non-cloneable streaming bodies are never replayed. The final response keeps its status, headers and body. Dropping the request future cancels a pending request or backoff. Retries do not provide exactly-once execution.

Requires Rust 1.88. Default TLS is rustls. For native TLS, disable default features and enable native-tls. A supplied reqwest client keeps its own TLS policy.

Structs§

RetryPolicy
A bounded retry policy for explicit HTTP 429 responses.

Functions§

client_builder
Start a client builder with the selected TLS backend and same-origin redirects. rustls takes precedence when both TLS features are enabled.
execute
Execute a request with the supplied rate-limit retry policy.