rhttp 0.9.1 copy "rhttp: ^0.9.1" to clipboard
rhttp: ^0.9.1 copied to clipboard

Make HTTP requests using Rust for Flutter developers. It uses FFI to call Rust functions from Dart. On the Rust side, it uses reqwest to make HTTP requests.

0.9.1 #

  • feat: allow reuse of same CancelToken for multiple requests, all requests are canceled when token is canceled

0.9.0 #

  • feat: add ProxySettings.proxy('http://localhost:8080') and other proxy settings
  • feat: improve performance when uploading a byte stream
  • feat: improve performance when tracking progress during download of a large binary file
  • feat: onSendProgress and onReceiveProgress now always emit the final progress event (100%)
  • fix: set idleTimeout in IoCompatibleClient no longer throws an exception

0.8.2 #

  • fix: possible CloseStreamException when using IoCompatibleClient
  • deps: bump flutter_rust_bridge to 2.5.1

0.8.1 #

  • deps: bump flutter_rust_bridge to 2.5.0

0.8.0 #

  • feat: add IoCompatibleClient, a compatibility layer for dart:io's HttpClient
  • feat: add dnsSettings to ClientSettings to provide custom DNS resolution
  • BREAKING: timeout and connectTimeout moved to TimeoutSettings (deprecated in 0.7.2)

0.7.2 #

  • feat: add keepAliveTimeout, keepAlivePing to new TimeoutSettings (@nicobritos)
  • DEPRECATED: timeout and connectTimeout moved to TimeoutSettings

0.7.1 #

  • fix: export RhttpInvalidCertificateException, RhttpConnectionException
  • deps: remove plugin_platform_interface dependency
  • deps: bump flutter_rust_bridge to 2.4.0

0.7.0 #

  • fix: creating a second client might overwrite the first client due to memory address conflict
  • BREAKING: change RhttpInvalidClientException to RhttpClientDisposedException

0.6.2 #

  • feat: add baseUrl setting to ClientSettings
  • feat: add redirectSettings to ClientSettings
  • feat: add RhttpRedirectException
  • feat: RhttpCompatibleClient.close cancels all running requests similar to IOClient of http package

0.6.1 #

  • feat: add onSendProgress and onReceiveProgress
  • feat: increase performance of HttpBody.stream
  • feat: always compile Rust in release mode

0.6.0 #

  • feat: add HttpBody.stream to send a stream as request body
  • feat: RhttpCompatibleClient sets throwOnStatusCode to false to conform with http package

0.5.4 #

  • feat: wrap any exception in RhttpCompatibleClient into RhttpWrappedClientException

0.5.3 #

  • feat: add RhttpConnectionException to catch connection errors like no internet, server not reachable, etc.
  • feat: add RhttpCompatibleClient.createSync
  • feat: add cancelRunningRequests parameter to RhttpClient.dispose
  • fix: creating a client with HTTP/3 fails with no async runtime found

0.5.2 #

  • fix: RetryInterceptor should throw RhttpCancelException if request is canceled during retry

0.5.1 #

  • feat: add RhttpClient.createSync
  • feat: add HttpHeaders.copyWith, HttpHeaders.copyWithout
  • feat: add convenience method: HttpTextResponse.bodyToJson
  • fix: reset parameters in RetryInterceptor.shouldRetry before retrying

0.5.0 #

  • feat: interceptors (e.g. RetryInterceptor)
  • feat: certificate pinning
  • feat: client certificate / mutual TLS
  • feat: add ProxySettings
  • BREAKING: requestGeneric renamed to request, request removed

0.4.0 #

  • feat: add RhttpCompatibleClient that is compatible with the http package

0.3.2 #

  • docs: update README

0.3.1 #

  • docs: add benchmark

0.3.0 #

  • feat: add HttpBody.multipart
  • feat: change TlsSettings.verifyCerts to TlsSettings.verifyCertificates

0.2.0 #

  • feat: add RhttpStatusCodeException, RhttpInvalidCertificateException
  • feat: add TlsSettings

0.1.0 #

  • feat: request body types
  • feat: client for connection pooling / reuse
  • feat: cancel requests
  • feat: improve error handling with RhttpException

0.0.2 #

  • feat: query, headers, body

0.0.1 #

  • initial release
39
likes
160
pub points
91%
popularity

Publisher

verified publishertienisto.com

Make HTTP requests using Rust for Flutter developers. It uses FFI to call Rust functions from Dart. On the Rust side, it uses reqwest to make HTTP requests.

Repository (GitHub)
View/report issues

Topics

#http #rust #ffi #http2 #http3

Documentation

API reference

Funding

Consider supporting this project:

github.com

License

MIT (license)

Dependencies

flutter, flutter_rust_bridge, freezed_annotation, http, meta

More

Packages that depend on rhttp