kcliu / superagent-bluebird-promise

Add promise support to superagent using Bluebird

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status

superagent-bluebird-promise

Add promise support to Superagent using Bluebird.

Install

npm install superagent-bluebird-promise

Usage

Simply require this package instead of superagent. Then you can call .then() instead of .end() to get a promise for your requests.

var request = require('superagent-bluebird-promise');

request.get('/an-endpoint')
  .then(function(res) {
    console.log(res);
  }, function(error) {
    console.log(error);
  });

To generate a promise without registering any callbacks (e.g. when returning a promise from within a library), call .promise() instead.

request.get('/an-endpoint').promise()

In order to use any of Bluebird's various promise methods, make sure you call .then() or .promise() first.

An error is thrown for all HTTP errors and responses that have a response code of 400 or above.

The error parameter always has a key error and for 4xx and 5xx responses, will also have a status and res key.

Cancelling requests

You can abort the request by cancelling the promise:

promise.cancel();

This is only possible because we have configured bluebird to be cancellable by default.

About

Add promise support to superagent using Bluebird

License:MIT License


Languages

Language:CoffeeScript 60.9%Language:JavaScript 35.6%Language:Makefile 3.5%