Skip to content
Learn more
Please note that GitHub no longer supports Internet Explorer versions 7 or 8.

We recommend upgrading to the latest Internet Explorer, Google Chrome, or Firefox.

If you are using IE 11, make sure you turn off "Compatibility View".

The Feathers REST API provider
JavaScript
Find file
Latest commit 1bc3fb4 @daffl daffl 1.2.4

README.md

feathers-rest

Build Status

The Feathers REST API provider

About

This provider exposes Feathers services through a RESTful API using Express that can be used with Feathers 1.x and 2.x as well as client support for Fetch, jQuery, Request and Superagent.

Note: For the full API documentation go to feathersjs.com/docs/providers.html.

Quick example

import feathers from 'feathers';
import bodyParser from 'body-parser';
import rest from 'feathers-rest';

const app = feathers()
  .configure(rest())
  .use(bodyParser.json())
  .use(bodyParser.urlencoded({ extended: true }))
  .use(function(req, res, next) {
    req.feathers.data = 'Hello world';
    next();
  });

app.use('/:app/todos', {
  get: function(id, params) {
    console.log(params.data); // -> 'Hello world'
    console.log(params.app); // will be `my` for GET /my/todos/dishes

    return Promise.resolve({
      id,
      params,
      description: `You have to do ${name}!`
    });
  }
});

Client use

import feathers from 'feathers/client';
import rest from 'feathers-rest/client';

import jQuery from 'jquery';
import fetch from 'node-fetch';
import request from 'request';
import superagent from 'superagent';

const app = feathers()
  .configure(rest('http://baseUrl').jquery(jQuery))
  // or
  .configure(rest('http://baseUrl').fetch(fetch))
  // or
  .configure(rest('http://baseUrl').request(request))
  // or
  .configure(rest('http://baseUrl').superagent(superagent))

Changelog

1.1.0

  • Adding REST clients for jQuery, Request, Superagent and Fetch for universal usage

1.0.0

  • Initial release of extracted module from Feathers 1.3

License

Copyright (c) 2015

Licensed under the MIT license.

Something went wrong with that request. Please try again.