Mercury_Client

pub package CI GitHub Tag New Commits Last Commits Pull Requests Code size License Funding Funding

Portable HTTP client (Browser and Native support) with memory cache.

Methods:

  • GET
  • POST
  • PUT
  • DELETE
  • PATCH
  • OPTIONS.

Usage

A simple usage example:

import 'package:mercury_client/mercury_client.dart';
import 'dart:async';

main() async {
  
  var client = HttpClient('http://gateway.your.domain/api-1') ;

  // Calling with POST method:
  // URL: http://gateway.your.domain/api-1/call-foo?var=123
  // Content-Type: application/json
  // Body:
  // { 'content': 'any' }}
  var response = await client.post("call-foo", parameters: {'var': '123'}, body: "{ 'content': 'any' }}", contentType: 'application/json') ;
  
  if ( response.isOK ) {
    print( response.body ) ;
  }

}

HttpCache usage:

import 'package:mercury_client/mercury_client.dart';
import 'dart:async';

main() async {
  
  var client = HttpClient('http://gateway.your.domain/api-1') ;
  
  // HTTP Cache with max memory of 16M and timeout of 5min:
  var cache = HttpCache(1024*1024*16, 1000*60*5) ;

  var response = cache.getURL( 'http://host/path/to/base64/image.jpeg') ;

  if ( response.isOK ) {
    img.src = 'data:image/jpeg;base64,'+ response.body ;
  }

}

Mercury (mythology)

Mercury is known to the Romans as Mercurius.

He is the god of financial gain, commerce, eloquence, messages, communication (including divination), travelers, boundaries, luck, trickery and thieves.

Features and bugs

Please file feature requests and bugs at the issue tracker.

Author

Graciliano M. Passos: gmpassos@GitHub.

License

Dart free & open-source license.

Libraries

mercury_client