Top Flutter HTTP Client and Utilities packages A HTTP client in Dart is used for making HTTP requests. Your device (client) running the Flutter app makes a request to a server, and the server responds. The client then interprets the response and takes action accordingly. The complete list of Dart and Flutter packages that can help you create HTTP client, make HTTP API requests, cache server response and provide various other HTTP utilities in your Flutter app is provided below.
mime
541
Utilities for handling media (MIME) types, including determining a type from a file extension and file contents.
dio_cache_interceptor
372
Dio HTTP cache interceptor with multiple stores respecting HTTP directives (or not).
web_scraper
292
A simple web scraper to scrape HTML tags and their attributes to cast them into Lists and Maps for dart and flutter.
vexana
288
Manage your network layer with dio. You will be able to use it very easily network operations.
dio_smart_retry
267
Retry library for Dio package. By default, the request will be retried only for appropriate retryable http statuses.
universal_io
247
Cross-platform 'dart:io' that adds browser support for HttpClient and some other "dart:io" APIs.
http_interceptor
195
A lightweight, simple plugin that allows you to intercept request and response objects and modify them if desired.
dart_ipify
168
This package uses the remote ipify web services in order to get your public IP address or geographical details from any given IP.
dio_cookie_manager
150
A cookie manager combines cookie_jar and dio, based on the interceptor algorithm.
chucker_flutter
150
Chucker Flutter helps you inspect the HTTP(S) requests/responses. It stores data locally and provides a UI for inspecting network calls and sharing their content.
fresh_dio
149
An http interceptor for token refresh. Fresh is built on top of package:dio and manages authentication tokens transparently.
uno
141
Uno is a multiplatform HTTP client, based on Axios and built following the Clean Dart approach by the Flutterando Community.
requests_inspector
141
A Flutter package for logging REST-APIs and GraphQL requests and accessing it by Shaking your phone to get the RequestsInspector widget on your screen.
http_certificate_pinning
132
Https Certificate pinning for Flutter. Checks the equality between the known SHA-1 or SHA-256 fingerprint and the SHA-1 or SHA-256 of the target server.
dartssh2
128
SSH and SFTP client written in pure Dart, aiming to be feature-rich as well as easy to use.
al_downloader
104
A URL-based flutter downloader that supports to download any type of file and automatically manages a lot of things.
metadata_fetch
102
A dart library for extracting metadata on web pages such as OpenGraph, Meta, Twitter Cards, and Structured Data (Json-LD)
flutter_client_sse
93
Dart package to help consume SSE API. It consumes server sent events by returning parsed model of the event, id, and the data
cookie_jar
90
A cookie manager for http requests in Dart, help you to deal with the cookie policies and persistence.
webview_cookie_manager
81
Have you been turned into a cookie management problem? This package can help. It has all of the cookie management functionality you have been looking for.
eventflux
80
Efficient handling of server-sent event streams with easy connectivity and data management.
sse
80
Provides client and server functionality for setting up bi-directional communication through Server Sent Events (SSE) and corresponding POST requests.
rhttp
70
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.
chuck_interceptor
70
Chuck is an HTTP Inspector tool which helps debugging http requests. It catches and stores http requests and responses, which can be viewed via simple UI.
cupertino_http
67
A macOS/iOS Flutter plugin that provides access to the Foundation URL Loading System.
get_ip_address
51
A package to get the ip address of the current device. Uses https://api64.ipify.org to get the system IP.
dio_http2_adapter
48
An adapter that combines HTTP/2 and dio. Supports reusing connections, header compression, etc.
network_tools
46
Networking Tools library which can help you discover open ports, devices on subnet and many other things.
native_dio_adapter
45
A client for dio which makes use of cupertino_http and cronet_http to delegate HTTP requests to the native platform.
dio_http_formatter
45
A Dio interceptor for pretty printing the HTTP request/response to be printed in the console for easier debugging
network_logger
44
Network logger with well designed user interface to inspect network traffic logs. Included with Dio interceptor.
fetch_client
42
Client for http package based on Fetch API, enables streamed and cancelable requests on web and more.
json_api
35
A framework-agnostic implementations of JSON:API Client and Server. Supports JSON:API v1.0 (jsonapi.org)
chunked_uploader
35
An easy-to-use package to upload files in chunks using Dio for mobile, desktop and web.
gql_dio_link
34
Similar to gql_http_link, gql_dio_link is a GQL Terminating Link to execute requests via Dio using JSON
http_proxy
34
http proxy plugin,get and set http proxy automatically.This package help you to use proxy tools.
rest_api_client
33
Abstraction for communicating with REST API in flutter projects. Incorporates exception handling and jwt with refresh token authorization.
curl_logger_dio_interceptor
33
Get your http requests printed as curl command in your terminal. Share them easily with your colleagues and import them in Postman!
flutter_alice
32
Alice is an HTTP Inspector tool which helps debugging http requests. It catches and stores http requests and responses, which can be viewed via simple UI.
dio_http_cache_lts
31
It's just a maintainance version of the dio_http_cache package to be compatible with the latest dio package
network_inspector
30
Http inspector / logger for Dio and Http package. This package would allow you to log every Http request, response, and error from Dio & Http.
lehttp_overrides
25
A Flutter package to resolve Let's Encrypt SSL certificate problems with Android 7.1.1 and below
flutter_query
24
Widgets that help state management of asynchronous operations such as sending HTTP requests, getting the response, and caching the result.
uri
23
Utilities for building and parsing URIs, including support for parsing URI templates as defined in RFC 6570.
flutter_user_agentx
23
Retrieve device and webview user agent strings for Android and iOS devices. It also provides you with simple building blocks for generating your own user agent string.
system_proxy
22
A Flutter Plugin to get system plugin. Use to set dart HttpClient proxy for grabing requests.
pretty_http_logger
19
Pretty Http Logger is a middleware logger library for Dart HTTP library that logs network calls in a pretty, easy-to-read format and supports intercepting network calls.
http_client
15
A platform-independent HTTP client API supporting browser, console, and curl (for SOCKS proxy).
http_services
12
A Dart package based on Dio that provides base models to handle HTTP services requests.
http_methods
11
List of all HTTP methods registered with IANA as list of strings, and metadata such as whether a method idempotent.
fetch_api
11
JavaScript bindings for Fetch API, flexible HTTP requests, redirects, streaming and more.
cooky
10
An HTTP Cookies implementation for the client to get, set and remove cookies. It is very simple and well tested.
http_file_uploader
8
A en_file_uploader plugin to handle the file upload using http package. Provides the capability to upload a file in chunks with built-in retry handling.
brick_offline_first_with_rest
8
A Brick domain that routes data fetching through local providers before a REST providers.
fetchx
6
Fetchx is a simple, fast, and secure HTTP client for Dart. It leverages extensions to allow using url-like strings to make http requests.
dio_file_uploader
5
A en_file_uploader plugin to handle the file upload using dio package. Provides the capability to upload a file in chunks with built-in retry handling.
webdev_proxy
5
A simple HTTP proxy for webdev's serve command. Supports apps that use HTML5 routing by rewriting 404s to the root index.
faye_dart
3
Faye is a publish/subscribe messaging protocol that is built on the Bayeux protocol, a messaging system utilized for transporting asynchronous messages over HTTP.
shelf_session
2
The shelf_session is the implementation of cookiesMiddleware and sessionMiddleware for shelf.
jh_services
2
A lightweight service package for Flutter to handle network requests, local storage, and connectivity seamlessly with best practices.
instabug_http_client
1
This package is an add on to instabug_flutter. It intercepts any requests performed with http Package and sends them to the report that will be sent to the dashboard.
dio
0
A powerful HTTP package for Dart/Flutter, which supports Global settings, Interceptors, FormData, Aborting and canceling a request, Files uploading and downloading, Requests timeout, Custom adapters, etc.
retry
0
Utility for wrapping an asynchronous function in automatic retry logic with exponential back-off, useful when making requests over network.