Get unlimited public & private packages + package-based permissions with npm Pro.Get started »

regard

0.1.1 • Public • Published

Regard

build status dependency status dev dependency status license

npm badge

Sugar-interface to access multiple data sources.

Example

In the example below, we will:

  1. Create a new instance of Regard ;
  2. Load two connectors (FsConnector and HttpConnector) ;
  3. Create two major endpoints (root which give access to the current folder and mb which give access to the Mockbin API);
  4. Execute a request to http://mockbin.com/request, write the result into sample.json, read it and print the content on the standard output.
var Regard = require('regard');
 
// #1 Create a new instance of Regard
var regard = Regard();
 
// #2 Load two connectors
regard
  .$$(Regard.FsConnector)
  .$$(Regard.HttpConnector);
 
// #3 Create two major endpoints
regard
  .$('mb', 'http://mockbin.com')
  .$('root', __dirname);
 
// #4 Execute a request to http://mockbin.com/request
regard('mb', 'request')
  .then(function (res) {
    // write the result into __dirname/sample.json
    return regard.root('write', 'sample.json', res.body);
  })
  .then(function () {
    // read it
    return regard.root('read', 'sample.json');
  })
  .then(function (res) {
    // and print it
    console.log(res);
  });

We can rewrite this example with less code lines:

  1. Create an instance of Regard initialized with FsConnector and HttpConnector ;
  2. Create two major endpoints and two nested endpoints (one under the mb endpoint and an other under the root endpoint);
  3. Execute a request, write the result into sample.json and print it.
var Regard = require('regard');
 
// #1 Create an instance of Regard initialized with two connectors
var regard = Regard('fs', 'http');
 
// #2 Create two major endpoints and one nested endpoint under each of them
regard
  .$('mb', 'http://mockbin.com')
  .$('root', __dirname)
  .mb.$('request', 'request')
  .root.$('sample', 'sample.json');
 
// #3 Execute a request, write and print the result
regard.mb.request()
  .then(function (res) {
    return regard.root.sample('write', res.body);
  })
  .then(console.log);

The two example above have the same result: the request's response is wrote into sample.json.

$ cat sample.json
 
{
  startedDateTime: '2015-09-23T07:04:52.797Z',
  clientIPAddress: '79.87.208.107',
  method: 'GET',
  url: 'http://mockbin.com/request',
  httpVersion: 'HTTP/1.1',
  // ...
}

Tests

npm test

Credits

License

MIT

Install

npm i regard

DownloadsWeekly Downloads

0

Version

0.1.1

License

MIT

Last publish

Collaborators

  • avatar