regard
v0.1.1
Published
Sugar-interface to access multiple data sources.
Downloads
6
Maintainers
Readme
Regard
Sugar-interface to access multiple data sources.
Example
In the example below, we will:
- Create a new instance of Regard ;
- Load two connectors (FsConnector and HttpConnector) ;
- Create two major endpoints (
root
which give access to the current folder andmb
which give access to the Mockbin API); - 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:
- Create an instance of Regard initialized with FsConnector and HttpConnector ;
- Create two major endpoints and two nested endpoints (one under the
mb
endpoint and an other under theroot
endpoint); - 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