@arundo/microservice-interface
[![Coverage Status](https://coveralls.io/repos/github/arundo/microservice_interface_library/badge.svg?t=SoXyxY)](https://coveralls.io/github/arundo/microservice_interface_library) [![Build Status](https://travis-ci.com/arundo/microservice_interface_librar
Last updated 3 years ago by arundo-dev .
ISC · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @arundo/microservice-interface 
SYNC missed versions from official npm registry.

Coverage Status Build Status

Microservice Interface Library

This is microservice interface library that used to easily connect to other arundo fabric microservice easily.

Implementation Details

How to install it

$ npm install --save-dev arundo/microservice-interface

Rest client

Rest client is used to easily and efficiently call the arundo fabric microservices endpoints without worrying about fetching the auth token. The token can be fetched either from the auth fabric microservice or auth0 directly. You can also cache the token in redis.

// apiBaseUrl is required
const apiBaseUrl = 'https://api.arundo.com';

// authOptions is required
const authOptions = {
  user: 'USER ID', // required
  password: 'USER PASSWORD', // required
  fromAuth0: 'true | false', // optional
  auth0BaseUrl: 'AUTH0 BASE URL', // optional
  clientId: 'AUTH0 CLIENT ID', // optional
  clientSecret: 'AUTH0 CLIENT SECRET', // optional
  audience: 'AUTH0 AUDIENCE', // optional
  devUrl: 'URL for local service instance for dev purposes, still using auth service to get token'// optional, e.g. 'http://localhost:5000'
};

// redisOptions is optional
const redisOptions = {
  host: 'REDIS HOST', // required
  password: 'REDIS PASSWORD', // required
  name: 'UNIQUE NAME FOR REDIS KEY', // optional
  expireTime: 'REDIS EXPIRATION TIME', // optional
};

const restClient = new RestClient(apiBaseUrl, authOptions, redisOptions);

const id = 'YOUR ID HERE';
restClient.callEndPoint('GET', `/v0/services/${id}`)
.then(result => console.log(result))
.catch(err => console.log(err));

Cache client

Cache client is used to cache a document.

// apiBaseUrl is required
const apiBaseUrl = 'https://api.arundo.com';

// authOptions is required
const authOptions = {
  user: 'USER ID', // required
  password: 'USER PASSWORD', // required
  fromAuth0: 'true | false', // optional
  auth0BaseUrl: 'AUTH0 BASE URL', // optional
  clientId: 'AUTH0 CLIENT ID', // optional
  clientSecret: 'AUTH0 CLIENT SECRET', // optional
  audience: 'AUTH0 AUDIENCE', // optional
};

// redisOptions is optional
const redisOptions = {
  host: 'REDIS HOST', // required
  password: 'REDIS PASSWORD', // required
  name: 'UNIQUE NAME FOR REDIS KEY', // optional
  expireTime: 'REDIS EXPIRATION TIME', // optional
};

const myClientOptions = {
  name: 'pipeline',
  url: `${apiBaseUrl}/v0/pipelines/%s/`,
};

const restClient = new RestClient(apiBaseUrl, authOptions, redisOptions);
const cacheClient = new CacheClient(restClient, redisOptions);
const myClient = cacheClient.createClient(myClientOptions);

const id = 'YOUR DOC ID HERE';
myClient.get(id)
.then(doc => console.log(doc))
.catch(err => console.log(err));

Current Tags

  • 3.1.2                                ...           latest (3 years ago)

26 Versions

  • 3.1.2                                ...           3 years ago
  • 3.1.1                                ...           3 years ago
  • 3.1.0                                ...           3 years ago
  • 3.0.1                                ...           3 years ago
  • 3.0.0                                ...           3 years ago
  • 2.4.4                                ...           3 years ago
  • 2.4.3                                ...           3 years ago
  • 2.4.2                                ...           3 years ago
  • 2.4.1                                ...           3 years ago
  • 2.4.0                                ...           3 years ago
  • 2.3.5                                ...           3 years ago
  • 2.3.4                                ...           3 years ago
  • 2.3.3                                ...           3 years ago
  • 2.3.2                                ...           3 years ago
  • 2.3.1                                ...           3 years ago
  • 2.3.0                                ...           3 years ago
  • 2.2.0                                ...           3 years ago
  • 2.1.0                                ...           3 years ago
  • 2.0.0                                ...           3 years ago
  • 1.0.5                                ...           3 years ago
  • 1.0.4                                ...           3 years ago
  • 1.0.3                                ...           3 years ago
  • 1.0.2                                ...           3 years ago
  • 0.0.1                                ...           3 years ago
  • 1.0.1                                ...           3 years ago
  • 1.0.0                                ...           3 years ago
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 26
Last Month 53
Dependencies (5)
Dev Dependencies (18)
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |