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.
dio
7198
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.
retrofit
1728
retrofit.dart is an dio client generator using source_gen and inspired by Chopper and Retrofit.
retry
861
Utility for wrapping an asynchronous function in automatic retry logic with exponential back-off, useful when making requests over network.
mime
451
Utilities for handling media (MIME) types, including determining a type from a file extension and file contents.
dio_cache_interceptor
318
Dio HTTP cache interceptor with multiple stores respecting HTTP directives (or not).
web_scraper
288
A simple web scraper to scrape HTML tags and their attributes to cast them into Lists and Maps for dart and flutter.
vexana
268
Manage your network layer with dio. You will be able to use it very easily network operations.
universal_io
226
Cross-platform 'dart:io' that adds browser support for HttpClient and some other "dart:io" APIs.
dio_smart_retry
199
Retry library for Dio package. By default, the request will be retried only for appropriate retryable http statuses.
http_interceptor
178
A lightweight, simple plugin that allows you to intercept request and response objects and modify them if desired.
dart_ipify
154
This package uses the remote ipify web services in order to get your public IP address or geographical details from any given IP.
uno
130
Uno is a multiplatform HTTP client, based on Axios and built following the Clean Dart approach by the Flutterando Community.
fresh_dio
129
An http interceptor for token refresh. Fresh is built on top of package:dio and manages authentication tokens transparently.
dio_cookie_manager
127
A cookie manager combines cookie_jar and dio, based on the interceptor algorithm.
http_certificate_pinning
117
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
114
SSH and SFTP client written in pure Dart, aiming to be feature-rich as well as easy to use.
requests_inspector
105
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.
al_downloader
103
A URL-based flutter downloader that supports to download any type of file and automatically manages a lot of things.
chucker_flutter
101
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.
metadata_fetch
99
A dart library for extracting metadata on web pages such as OpenGraph, Meta, Twitter Cards, and Structured Data (Json-LD)
webview_cookie_manager
76
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.
cookie_jar
76
A cookie manager for http requests in Dart, help you to deal with the cookie policies and persistence.
chuck_interceptor
65
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.
sse
61
Provides client and server functionality for setting up bi-directional communication through Server Sent Events (SSE) and corresponding POST requests.
flutter_client_sse
59
Dart package to help consume SSE API. It consumes server sent events by returning parsed model of the event, id, and the data
cupertino_http
48
A macOS/iOS Flutter plugin that provides access to the Foundation URL Loading System.
eventflux
47
Efficient handling of server-sent event streams with easy connectivity and data management.
get_ip_address
46
A package to get the ip address of the current device. Uses https://api64.ipify.org to get the system IP.
dio_http_formatter
43
A Dio interceptor for pretty printing the HTTP request/response to be printed in the console for easier debugging
network_logger
41
Network logger with well designed user interface to inspect network traffic logs. Included with Dio interceptor.
network_tools
38
Networking Tools library which can help you discover open ports, devices on subnet and many other things.
dio_http2_adapter
37
An adapter that combines HTTP/2 and dio. Supports reusing connections, header compression, etc.
native_dio_adapter
35
A client for dio which makes use of cupertino_http and cronet_http to delegate HTTP requests to the native platform.
gql_dio_link
34
Similar to gql_http_link, gql_dio_link is a GQL Terminating Link to execute requests via Dio using JSON
json_api
34
A framework-agnostic implementations of JSON:API Client and Server. Supports JSON:API v1.0 (jsonapi.org)
rest_api_client
31
Abstraction for communicating with REST API in flutter projects. Incorporates exception handling and jwt with refresh token authorization.
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
chunked_uploader
30
An easy-to-use package to upload files in chunks using Dio for mobile, desktop and web.
http_proxy
29
http proxy plugin,get and set http proxy automatically.This package help you to use proxy tools.
curl_logger_dio_interceptor
28
Get your http requests printed as curl command in your terminal. Share them easily with your colleagues and import them in Postman!
flutter_alice
28
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.
network_inspector
27
Http inspector / logger for Dio and Http package. This package would allow you to log every Http request, response, and error from Dio & Http.
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.
lehttp_overrides
23
A Flutter package to resolve Let's Encrypt SSL certificate problems with Android 7.1.1 and below
uri
22
Utilities for building and parsing URIs, including support for parsing URI templates as defined in RFC 6570.
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
10
List of all HTTP methods registered with IANA as list of strings, and metadata such as whether a method idempotent.
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.
brick_offline_first_with_rest
3
A Brick domain that routes data fetching through local providers before a REST providers.
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.