The future of Node.js REST development
Branch: master
Clone or download
rajatkumar docs(CHANGELOG): Update changelog (#1751)
Update changelog to reflect the fact that restify dropped support for Node 4.x and 6.x
Latest commit d901e43 Feb 22, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github chore(github): add stale config (#1643) Apr 10, 2018
benchmark feat(server): new router and middleware system (#1561) Mar 20, 2018
bin Convert 8 spaces indent to 4 - update linter Feb 5, 2014
docs feat(req): add restifyDone event (#1740) Jan 19, 2019
examples docs(server): remove outdated options.acceptable, fixes #1636 (#1645) Apr 20, 2018
lib feat(audit): Add the ability to specify a custom audit log serializer… Feb 1, 2019
test feat(audit): Add the ability to specify a custom audit log serializer… Feb 1, 2019
tools fix(dev): remove nsp since the project merged with npm Jan 30, 2019
.dir-locals.el [minor] update emacs .dir-locals.el to 4 space indent rules Feb 12, 2014
.eslintignore fix up eslintrc to ignore all style rules May 22, 2015
.eslintrc.js chore(prettier) fix styling issues (#1583) Dec 18, 2017
.gitignore refactor(server): add benchmark suite, improve performance (#1554) Nov 8, 2017
.npmignore chore(npmignore): add .github folder (#1486) Sep 12, 2017
.prettierignore chore(prettier): use prettier for style checking and fixing (#1537) Oct 31, 2017
.prettierrc chore(prettier): use prettier for style checking and fixing (#1537) Oct 31, 2017
.tern-project GH-958 RequestCaptureStream now writes triggering record May 12, 2016
.travis.yml BREAKING CHANGE: restify drops Node v4.x and v6.x (#1750) Feb 20, 2019
CHANGELOG.md docs(CHANGELOG): Update changelog (#1751) Feb 21, 2019
CHANGES.md chore: Updating CHANGES.md Jun 27, 2017
CONTRIBUTING.md refactor(server): add benchmark suite, improve performance (#1554) Nov 8, 2017
FEATURE_REQUESTS.md docs(FEATURE_REQUESTS.md): spelling fix (#1534) Oct 19, 2017
LICENSE Initial Creation Apr 25, 2011
Makefile fix(dev): remove nsp since the project merged with npm Jan 30, 2019
README.md BREAKING CHANGE: restify drops Node v4.x and v6.x (#1750) Feb 20, 2019
package.json chore(release): release 8.0.0 Feb 20, 2019

README.md

alt text

restify

Build Status Dependency Status devDependency Status code style: prettier

restify is a framework, utilizing connect style middleware for building REST APIs. For full details, see http://restify.com

Follow restify on alt text

Usage

Server

var restify = require('restify');

const server = restify.createServer({
  name: 'myapp',
  version: '1.0.0'
});

server.use(restify.plugins.acceptParser(server.acceptable));
server.use(restify.plugins.queryParser());
server.use(restify.plugins.bodyParser());

server.get('/echo/:name', function (req, res, next) {
  res.send(req.params);
  return next();
});

server.listen(8080, function () {
  console.log('%s listening at %s', server.name, server.url);
});

Client

var assert = require('assert');
var clients = require('restify-clients');

var client = clients.createJsonClient({
  url: 'http://localhost:8080',
  version: '~1.0'
});

client.get('/echo/mark', function (err, req, res, obj) {
  assert.ifError(err);
  console.log('Server returned: %j', obj);
});

Installation

$ npm install restify

Supported Node Versions

Restify aims to support the Node.js LTS (Active and Maintenance) versions along with Node.js current stable version.

Node Release Supported in Current Version Notes
11.x Yes Current stable
10.x Yes Active LTS
8.x Yes Maintenance LTS
6.x No Use restify v7.x, team will backport critical issues only
4.x No Use restify v7.x, team will backport critical issues only

License

The MIT License (MIT)

Copyright (c) 2018 restify

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Bugs

See https://github.com/restify/node-restify/issues.

Other repositories

  • For the errors module, please go here.

Mailing list

See the Google group .