network_requests

An easy-to-use flutter http network requests handler with more functionality than http but more simpler than dio.

Platform Supported
Android
iOS
Web
Windows
Linux
Mac

Features

  • Interceptors

    The package adds functionality to add interceptors to http requests.

  • Safe Logging

    The package offers safe logging where logs only happen on an active dart debug vm.

  • Error Handling

    The package offers error handling out of the box to handle almost all http errors.

Getting started

Add the package to pubspec.yaml

    network_requests: // use the latest version

Platform specific configuration

Android

To allow your application to access the Internet, add the following permission to your AndroidManifest.xml file:

    <uses-permission android:name="android.permission.INTERNET"/>

Usage

import 'package:network_requests/network_requests.dart' as req;

final client = req.NetworkRequest.instance;

// * Add auth header interceptor.
// * Ideally this should be done on the main method before doing any network calls.
client.addInterceptor(AuthHeaderInterceptor());

final url = Uri.https('example.com', 'whatsit/create');
final response = await client.post(url, body: {'name': 'doodle', 'color': 'blue'});

print(response.status);
print(response.message);
print(response.data);

Additional information

The below shows the structure of the ApiResponse class returned from every API call.

Name Description Type
status The status code returned from the api call int
message The status code message received from the api call String
success The success status of api call, will be true if the request is successful and false if vice-versa bool
data The data received from the api call Object
exception The error received from the api call Object

Issues and Feature Requests

If you notice any bug or want to request for a feature, please fill free to raise an issue at: Issues/Feature

GitHub

View Github