| # flutter_http_example |
| |
| A Flutter sample app that illustrates how to configure and use |
| [`package:http`](https://pub.dev/packages/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 `Client`s through |
| an application. |
| * writing tests using `MockClient`. |
| |
| ## The important bits |
| |
| ### `http_client_factory.dart` |
| |
| This library used to create `package:http` `Client`s 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` `Client`s 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`. |