node package manager

fh-mbaas-api

FeedHenry MBAAS Cloud APIs

Overview

npm package

Build status Dependency Status Known Vulnerabilities

fh-mbaas-api provides FeedHenry MBaaS APIs to Node.js cloud apps.

Project Info
License: Apache License, Version 2.0
Build: npm
Documentation: http://docs.feedhenry.com/v3/api/cloud_api.html
Issue tracker: https://issues.jboss.org/projects/FH/summary
Mailing list: feedhenry-dev (subscribe)
IRC: #feedhenry channel in the freenode network.

Usage

fh-mbaas-api is included as standard with your cloud app code.

For custom apps, add the module via npm by running the following for the root of your app

npm install --save fh-mbaas-api

This will install the latest version of fh-mbaas-api and save the installed version in your package.json

Documentation

Documentation for the $fh cloud API is maintained at the FeedHenry API Docs.

Deprecated

Legacy Rhino functions have been deprecated. These are listed below - with their replacements in bold. All replacements listed but '$fh.web' have drop-in replacements available.

  • $fh.web -> request
  • $fh.log -> console.log
  • $fh.parse -> JSON.parse
  • $fh.stringify JSON.stringify

Tests

Before running tests do:

npm install
npm install -g grunt-cli

Then to run the tests use npm test

On Windows, use npm run testwindows

If tests return session errors in relation to redis, like the following:

1)  test session no timeout:
 
      Uncaught AssertionError: Error: Error: Ready check failed: ERR operation not permitted
      + expected - actual

Ensure that the correct redis password is set - export FH_REDIS_PASSWORD=RedisPassword

Caveats

Two sync loops per sync frequency

Two sync loops may be invoked per sync frequency if the server-side sync frequency differs from the client-side frequency.

This is because the client and server sync frequencies are set independently. Setting a long frequency on a client does not change the sync frequency on the server.

The syncFrequency value of the dataset on the server should be set to the sync_frequency value of the corresponding dataset on the client to avoid this.

For example:

  • sync_frequency on the client-side dataset is also set to 120 seconds.
  • syncFrequency on the server-side dataset is set to 120 seconds.