Skip to content

yoshuawuyts/server-router

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

server-router stability

npm version build status test coverage downloads js-standard-style

Performant radix-trie router for streaming servers.

Usage

var serverRouter = require('server-router')
var http = require('http')

var router = serverRouter({ default: '/404' })

router.route('GET', '/hello', function (req, res, params) {
  res.end('hello world')
})

router.route('PUT', '/hello/:name', function (req, res, params) {
  res.end('hi there ' + params.name)
})

router.route('', '/404', function (req, res, params) {
  res.status = 404
  res.end('404')
})

http.createServer(router.start()).listen()

API

router = serverRouter(opts)

Create a new router with opts.

router.route(method|[methods], route, function (req, res, params))

Register a new route with an HTTP method name and a routename. Can register multiple handlers by passing an array of method names. params contains matched partials from the route.

router.match(req, res)

Match a route on a router.

handler = router.start()

Return a function that can be passed directly to http.createServer() and calls router.match().

Installation

$ npm install server-router

See Also

License

MIT