tree: c576eddbf77f192e5c66c4990ddc98313a064c3c [path history] [tgz]
  1. android/
  2. ios/
  3. lib/
  4. linux/
  5. macos/
  6. test/
  7. web/
  8. windows/
  9. .gitignore
  10. .metadata
  11. mono_pkg.yaml
  12. pubspec.yaml
  13. README.md
pkgs/flutter_http_example/README.md

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 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 package:provider.
  • call package:http Client methods.

widget_test.dart

This library demonstrates how to construct tests using MockClient.