jsonapi_client 0.2.1

CircleCI

JSON API Client in Dartlang

Dartlang implementation of JSON API Client, adherent to JSON API specification 1.0.

Installation

Add jsonapi_client to your pubspec.yaml:

dependencies:
  jsonapi_client: "0.2.1"

Usage

Instantiate a client:

JSONAPIClient c = new JSONAPIClient();

then use it:

try {
  JSONAPIDocument d = await c.get(
      'http://api.url/aModel/1',
      includeModels:['anotherModel']);
} catch (err) {
  // the API did not return a valid JSON API Document
}

GET method

Used to retrieve a document containing a JSON API resource or a list of resources.

Future<JSONAPIDocument> get(String url, {List<String> includeModels, Map headers})

POST method

Used to create a document containing a JSON API resource.

Future<JSONAPIDocument> post(String url, String document, {List<String> includeModels, Map headers})

DELETE method

Used to delete a resource.

Future delete(String url, {Map headers})

Tests

You can test your application which uses JSONAPIClient by using the included MockJSONAPIClient class.

MockJSONAPIClient mockClient = new MockJSONAPIClient();

JSONAPIDocument mockDocument = new JSONAPIDocument({
  "data": {
      "id": "1",
      "type": "persons",
      "attributes": {
        "name": "Gianfranco",
        "surname": "Reppucci"
      }
    }
});

payload = '''
{
  "data": {
      "type": "persons",
      "attributes": {
        "name": "Gianfranco",
        "surname": "Reppucci"
      }
    }
}
''';

mockClient.setOutput(mockDocument);

mockClient.post('http://mockapi.test/persons', payload, includeModels: ['company'], headers: {'X-Test': 'Mock-Value'}); // will return mockDocument as output

// you can access the last request by using these mock client getters
mockClient.requestUrl
mockClient.requestPayload
mockClient.requestIncludedModels
mockClient.requestHeaders

CHANGELOG

All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.

[0.2.1] - 2016-07-07

Added

  • Attributes requestUrl,requestPayload, requestIncludedModels, requestHeaders to MockJSONAPIClient class.

[0.2.0] - 2016-07-06

Added

  • Class MockJSONAPIClient.

[0.0.1] - 2016-07-05

Initial version.

1. Depend on it

Add this to your package's pubspec.yaml file:

dependencies:
  jsonapi_client: "^0.2.1"

2. Install it

You can install packages from the command line:

$ pub get

Alternatively, your editor might support 'pub get'. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:jsonapi_client/jsonapi_client.dart';

About

Qurami JSON API Client

Author

Email bruno.bellissimo@qurami.com Bruno Bellissimo
Email alex.dobre@qurami.com Cosmin Alexandru Dobre
Email gianfranco.reppucci@qurami.com Gianfranco Reppucci

Homepage

github.com/qurami/jsonapi_client_dart

Documentation

www.dartdocs.org/documentation/jsonapi_client/0.2.1/

Source code (hyperlinked)

www.crossdart.info/p/jsonapi_client/0.2.1/

Uploader

gianfranco.reppucci@qurami.com

Published

Jul 7, 2016

Share