1.0.1 • Published 6 years ago
mkserv-router v1.0.1
MkServ Router
Router Middleware for MkServ.
Because no router, no internet.
Example
Here's the example from the official MkServ repository:
const { mkServ, applyMiddleware, bodyMiddleware } = require('mkserv');
const { routerMiddleware, get, post } = require('mkserv-router');
const low = require('lowdb');
const FileSync = require('lowdb/adapters/FileSync');
const adapter = new FileSync('data/messages.json');
const db = low(adapter);
db.defaults({ messages: [] }).write();
mkServ()
.middleware((req, res, next) => {
console.log(`Incoming request ${req.url}`);
next();
})
.middleware(
routerMiddleware([
get('/', (req, res) => {
res.end('Hello, World!');
}),
get('/messages', (req, res) => {
res.end(JSON.stringify(db.get('messages').value()));
}),
post(
'/messages',
applyMiddleware([bodyMiddleware()], (req, res) => {
db.get('messages')
.push(JSON.parse(req.body))
.write();
res.end('ok');
})
)
])
)
.listen(8080, () => {
console.log('Server listening on port 8080.');
});
API
routerMiddleware(routes: Array<{ method: string, url: string, handler: (res, res, next) => void }>): (res, req, next) => void
Middleware to handle Routes
Parameters
routes: Array<{ method: string, url: string, handler: (res, res, next) => void }>
- An array of Routes
Returns (req, res, next) => void
Example
mkServ()
.middleware(routerMiddleware([
get('/', (req, res) => {
res.end('Hello, World!');
})
]))
...
get(url: string, handler: (req, res, next) => void): { method: string, url: string, handler: (req, res, next) => void }
GET route helper function
Parameters
url: string
- The URL for the routehandler: (req, res, next) => void
- Function to call when route gets requested
Example
mkServ()
.middleware(routerMiddleware([
get('/', (req, res) => {
res.end('Hello, World!');
})
]))
...
post(url: string, handler: (req, res, next) => void): { method: string, url: string, handler: (req, res, next) => void }
POST route helper function
Parameters
url: string
- The URL for the routehandler: (req, res, next) => void
- Function to call when route gets requested
Example
mkServ()
.middleware(routerMiddleware([
post('/', (req, res) => {
res.end('Hello, World!');
})
]))
...