1.0.1 • Published 9 years ago
fb-ninja v1.0.1
fb-ninja
Makes batch requests to facebook API an easy task for you
Features
- Can handle a lot of API calls by split and defer them
- Accept callbacks
before,after,afterEach,beforeEach - Lightweight and fast
Install
npm install --save fb-ninjaGet started
const ninja = require("fb-ninja")
// define what you need for every request
const request = {
method: "get",
api: "me/accounts"
}
// top level access token
const options = { accessToken: process.env.ACCESS_TOKEN }
// get all result in one place as well as result per request
// place as many requests as you want
ninja(request, options)
.then(detailedResult => console.log(detailedResult))
.catch(err => console.error(err))Arguments
Request
It's the first parameter. All of them reffers to the api call itself.
Message or link are required. It's part of facebook field itself.
| Required | Key | Descripiton | Type | Default |
|---|---|---|---|---|
| yes | accessToken | Low level access token | String | |
| yes | message | Message or link are required | String | |
| no | link | Message or link are required | String | |
| no | method | Low level method | String | GET |
Options
it's the second parameter
| Required | Key | Descripiton | Type | Default |
|---|---|---|---|---|
| yes | accessToken | Top level access token | String | "" |
| no | method | Top level method (POST in batch requests always) | String | POST |
| no | api | Top level api ("" in batch requests always) | String | "" |
| no | includeHeaders | include headers in response or not | Boolean | false |
| no | appId | Top level facebook application ID | null | |
| no | timeout | Amount of time between batch requests | ms | 60000 |
| no | before | Before first loop | Function | null |
| no | after | After last loop | Function | null |
| no | beforeEach | Before each loop | Function | null |
| no | afterEach | After each loop | Function | null |
| no | retry | Retry canceled requests? | Boolean | true |
Tests
First of all make sure you have installed dev dependencies:
npm installTo run tests you should make file at the root folder facebook.json and put there expected
expected by you information that you can get fromFacebook Graph API Explorer.
{
"me": {
"name": "[FACEBOOK_NAME]",
"id": "[FACEBOOK_ID]",
"accessToken": "[FACEBOOK_ACCESS_TOKEN]"
},
"page": {
"accessToken": "[PAGE_FACEBOOK_ACCESS_TOKEN]"
}
}Then run
npm test