nxus / router

The Nxus router is an Express compatible web server and router for Nxus applications.
MIT License
0 stars 0 forks source link

nxus-router

Router Module

Build Status

The Nxus router is an Express compatible web server and router for Nxus applications.

Installation

In your Nxus application:

> npm install nxus-router --save

Configuration Options

  'router': {
    'staticRoutesInSession': false, // Should static routes use sessions
    'sessionStoreName': 'file-store-session', // name of a registered session store name
    'bodyParserJsonOptions': {'limit': '1mb'}, // Config options for body parser json handling
    'bodyParserUrlEncodeOptions': {extended: true, limit: "1mb"}  // Config options for body parser urlencoded form handling,
    'bodyParserRawRoutes': ['/route'] // Use raw instead of json processing for these routes
    'bodyParserRawOptions': {'type': 'application/json'}  // Config options for raw body parser routes,
  }

Session store settings (like cookie maxAge, domain) are set per-session-store, e.g.

  'waterline_sessions': {
    'cookie': {
      'maxAge': 86400000,
      'domain': '.example.com'
    }
  }

Usage

Defining a route

import {router} from 'nxus-router'

router.route('/', (req, res) => {
  res.send('Hello World')
})

Alternatively, you can specify a HTTP method:

router.route('GET', '/', (req, res) => {
  res.send('Hello World')
})

Adding Express/connect middleware

router.middleware((req, res) => {
  res.status(404).send('Nothing to see here')
})

Adding static files/directories

router.staticRoute("/my-prefix", myPath)

For example, myFile.txt in myPath is then available at the url /my-prefix/myFile.txt

Router

Extends NxusModule

Router provides Express based HTTP routing

Examples

import {router} from 'nxus-router'

getRoutes

Returns the internal routing table.

Returns array routes which have been registered

getExpressApp

Returns the Express App instance.

Returns Instance ExpressJs app instance.

sessionMiddleware

Sets the middleware handler for sessions, first in the configured stack

Parameters

middleware

Adds a middleware handler to the internal routing table passed to Express

Parameters

route

Adds a route to express.

Parameters

staticRoute

Adds a path to serve static files.

Parameters