network_request 0.1.1 copy "network_request: ^0.1.1" to clipboard
network_request: ^0.1.1 copied to clipboard

A powerful and comprehensive Dart package for simplifying HTTP requests and interacting with RESTful APIs

example/main.dart

import 'dart:async';

import 'package:http/http.dart' as http;
import 'package:http/retry.dart';

import 'json_placeholder/json_placeholder_network_manager.dart';
import 'json_placeholder/model/post.dart';
import 'json_placeholder/requests/comment.dart';
import 'json_placeholder/requests/post.dart';
import 'json_placeholder/requests/todo.dart';
import 'mock_api/mock_api_manager.dart';
import 'mock_api/models/mock_user.dart';
import 'mock_api/request/mock_auth.dart';
import 'mock_api/request/mock_user.dart';

void main() {
  exampleJp();
}

// MockAPIManger

void exampleMockAPIFormData() async {
  var network = MockAPIManger();
  await network.uploadPicture(1);
  await network.downloadPicture();
}

void exampleMockAPIUrlFormEncoded() {
  var network = MockAPIManger();
  network.addUserFromUrlEncoded(
    MockAPIUser(
      id: 1001,
      name: 'Mock',
      profilePic: null,
    ),
  );
}

void exampleMockAPI() {
  var network = MockAPIManger();
  network.fetchUser(1);
  network.addUser(MockAPIUser(id: 1001, name: 'Mock', profilePic: null));
  network.getError(1);
}

void exampleMockRefrshFlow() async {
  var network = MockAPIManger();
  // This will trigger tryToReauthenticate
  await network.unAuthUser();
}

// JsonPlaceholderManager
void exampleJp() {
  var network = JsonPlaceholderManager();
  network.getTodo(1);
  network.getCommentOfPost(1);
}

void presistExampleJp() async {
  final network = JsonPlaceholderManager();
  final presistClient = RetryClient(http.Client());

  final futures = <Future>[];
  futures.addAll([
    network.addPost(
      Post(
        id: -1,
        userId: 1,
        title: 'Example',
        body: 'Example body',
      ),
      client: presistClient,
    ),
    network.deletePost(1, client: presistClient)
  ]);
  await Future.wait(futures);
  presistClient.close();
}
0
likes
160
points
292
downloads

Publisher

unverified uploader

Weekly Downloads

A powerful and comprehensive Dart package for simplifying HTTP requests and interacting with RESTful APIs

Repository (GitHub)

Topics

#http #network #rest #logging #curl

Documentation

API reference

License

MIT (license)

Dependencies

collection, http

More

Packages that depend on network_request