🚀 Big News:Socket Has Acquired Secure Annex.Learn More
Socket
Book a DemoSign in
Socket

node-datahub

Package Overview
Dependencies
Maintainers
2
Versions
58
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

node-datahub

Client for FlightStats DataHub

latest
Source
npmnpm
Version
4.5.1
Version published
Weekly downloads
77
-18.95%
Maintainers
2
Weekly downloads
 
Created
Source

node-datahub

FlightStats data hub request-promise client.

installation

npm install node-datahub --save

usage

Create a Datahub instance and pass in an object with your data hub url.

For more information about the FlightStats data hub : https://github.com/flightstats/hub

var Datahub = require('node-datahub');

var datahub = new Datahub({
    url: <YOUR_DATAHUB_URL>
});

datahub.getChannels()
    .then(function (result) {
        // ...
    });

tests

Run the tests

npm test

HubWatcher & HubForwarder

You can use an Express server to easily interact with new hub items and to forward incoming requests to a hub channel. These classes require Express but extending them to support Koa or other servers wouldn't be too difficult.

Config

import { HubWatcher, HubForwarder } from 'node-datahub';
import express from 'express';

const expressApp = express();

const config = {
 hubHost: {
   production: 'http://hub.prod',
   staging: 'http://hub.staging',
   test: 'http://hub.dev',
   development: 'http://hub.dev',
 },
 appHost: {
   production: 'http://my-app.prod:3000',
   staging: 'http://my-app.staging:3000',
   test: 'http://localhost:3001',
   development: 'http://localhost:3000',
 },
 hubParallelCalls: 2,
 webhookName: 'my_webhook'
};

HubWatcher

Use the HubWatcher to receive process new hub channel items.

const watcher = new HubWatcher(expressApp, config);

const doSomething = (hubChannelItem, hubItemURI) => {
  console.log('New hub item', hubChannelItem, 'exists at', hubItemURI);
};

// Process each new hub channel item
watcher.watchChannel('some-channel', doSomething);

HubForwarder

Use the HubForwarder to receive an HTTP post to an Express route and then post the transformed request to a hub channel.

const forwarder = new HubForwarder(expressApp, config);

const xfm = (req) => {
  // See http://expressjs.com/en/api.html#req
  console.log('Transforming request to', req.originalUrl, 'Headers:', req.headers, 'Body:', req.body);
  return req.body;
};

// Forward post requests from a route to a channel running an optional transformer.
forwarder.forwardToChannel('/some/route', 'some-channel', xfm);

Keywords

FlightStats

FAQs

Package last updated on 22 Apr 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts