2.0.6 • Published 5 years ago
@measure-iot/api
Licence
BSD-3-Clause
Version
2.0.6
Deps
0
Size
42 kB
Vulns
0
Weekly
0
Measure API Node Client
This client generates an interface to access Measure's Mr. Fusion API
Installation
First install the package with
npm install --save @measure-iot/api
Usage examples
Minimal usage
import { Measure } from '@measure-iot/api';
const measureApi = new Measure();
const user = await measureApi.authenticate('YOUR-USERNAME', 'YOUR-PASSWORD');
const organization = await measureApi.getOrganization(user.organization.id);
// Pretty print json response
console.log(JSON.stringify(organization, null, 2));
Usage with sessions
To manage sessions you can store the token
const token = measureApi.getAuthToken();
storeToken(token); // Store your session token
and reload it instead of logging in again
import { Measure } from '@measure-iot/api';
const MY_AUTH_TOKEN = getStoredToken(); // Get token from storage
const measureApi = new Measure();
let user;
if (MY_AUTH_TOKEN) {
measureApi.setAuthToken(MY_AUTH_TOKEN);
user = await measureApi.getMe();
} else {
user = await measureApi.authenticate('YOUR-USERNAME', 'YOUR-PASSWORD');
}
// Do user stuff...
Cancel requests
You can also cancel a request by passing an instance of MeasureRequestHandler
const cancelToken = new MeasureRequestHandler();
// Login...
const { organization } = user;
const organization = await measureApi.getOrganization(organization.id, cancelToken);
And you can do
cancelToken.cancel();
by cancelling a request, the promise will return undefined.