net_client 1.0.0 copy "net_client: ^1.0.0" to clipboard
net_client: ^1.0.0 copied to clipboard

An opinionated HTTP client.

example/example.dart

import 'package:net_client/net_client.dart';

Future<void> main() async {
  final client = NetClientFactory().create(
    const ClientConfig(
      baseUrl: 'https://example.com/api',
      connectionTimeout: Duration(seconds: 5),
      receiveTimeout: Duration(seconds: 5),
    ),
  );

  final request = RequestSpec(
    pathOrUrl: '/users',
    method: HttpMethod.POST,
    body: const JsonBody({'name': 'Ragib'}),
    sendTimeout: const Duration(seconds: 2),
    receiveTimeout: const Duration(seconds: 2),
  );

  final result = await client.execute(spec: request);
  result.fold(
    onSuccess: (response) {
      print('Success: ${response.data}');
    },
    onFailure: (error) {
      switch (error) {
        case TransportException(type: final type):
          print('Transport error: $type');
        case UnexpectedException(message: final message):
          print('Unexpected error: $message');
        case CancellationException():
          print('Request was cancelled');
      }
    },
  );
}
0
likes
150
points
106
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

An opinionated HTTP client.

Homepage
Repository (GitHub)
View/report issues

License

BSD-3-Clause (license)

Dependencies

dart_functionals, dio, meta

More

Packages that depend on net_client