flutter_http_example

A Flutter sample app that illustrates how to configure and use package:http.

Goals for this sample

  • Provide you with example code for using package:http in Flutter, including:

    • configuration for multiple platforms.
    • using runWithClient and package:provider to pass Clients through an application.
    • writing tests using MockClient.

The important bits

http_client_factory.dart

This library used to create package:http Clients when the app is run inside the Dart virtual machine, meaning all platforms except the web browser.

http_client_factory_web.dart

This library used to create package:http Clients when the app is run inside a web browser.

Web configuration must be done in a seperate library because Dart code cannot import dart:ffi or dart:io when run in a web browser.

main.dart

This library demonstrates how to:

  • import http_client_factory.dart or http_client_factory_web.dart, depending on whether we are targeting the web browser or not.
  • share a package:http Client by using runWithClient and package:provider.
  • call package:http functions.

widget_test.dart

This library demonstrates how to construct tests using MockClient.