@navarrotech/servefunctions
Version:
If you're used to writing serverless functions in individual files, but need to write them on an express.js app, this package makes that easy.
54 lines (49 loc) • 1.18 kB
JavaScript
// To keep this package extremely lightweight, setup a mock express.js app:
const blank = {
status: (statusCode) => {
return { send: (message) => {} }
},
sendStatus: (statusCode) => {
return statusCode;
}
}
const mockExpressRoute = function(url, ...functions){
console.log(`App has registered: ${url}`)
// Simulate each function being called once.
functions.forEach(fn => fn(blank, blank, () => { console.log("Going to next") }))
}
const app = {
put: mockExpressRoute,
post: mockExpressRoute,
get: mockExpressRoute,
delete: mockExpressRoute,
all: mockExpressRoute,
}
require('../index')(app, {
path: './test/functions',
defaultMethod: 'post',
verbose: true,
autoTryCatch: true,
middleware: [
{
match: /index\.js$/i,
method: 'post',
pre: [
function(req, res, next){
console.log("Pre middleware 1!")
next()
},
function(req, res, next){
console.log("Pre middleware 2!")
next()
}
],
post: [
function(req, res, next){
console.log("Post middleware 3!")
next()
}
]
}
]
})