ioxidedocs

HTTP client Reference

Limits

What ioxide.httpclient does not do yet.

What it does not do yet#

  • No response timeout. A request to an origin that accepts it and never answers waits until the connection breaks. AcquireTimeoutMs bounds only the wait for a connection.
  • No streaming. A response is buffered whole, up to MaxResponseBytes; a request body is sent from memory you hold until the send completes.
  • https by IP address needs ServerName, even for a certificate issued for that address: set it to the address, and the certificate's IP address entries are checked. RingHttpClient ignores ServerName, so it cannot reach an https URL by address at all.
  • Addresses are tried one after another. There is no racing of IPv6 against IPv4 (Happy Eyeballs), so an IPv6 path that drops packets costs ConnectTimeoutMs before IPv4 is tried.
  • No retry. A request that fails is not sent again, not even on a connection that was closed between two sweeps.
  • No TLS session resumption, no proxy (CONNECT), no cookies, no decompression.
  • HTTP/1.1 only, one request at a time per connection.