A light-weight, promise-based and middleware-driven web framework
npm install use-serverA light-weight, promise-based and middleware-driven web framework
=================================
app.on('error', cb) or try/catch with async/await in middleware
use-router, use-cache;
req.forward('/new/url')
js
const createApp = require('use-server');
const app = createApp();
app.use(async (req, resp, next)=>{
console.log('1');
await next();
console.log('3');
})
app.use(async (req, resp, next)=>{
try{
let user = await User.queryDb();
resp.end(user.name);
}catch(e){
resp.statusCode = 500;
resp.end(e.message)
}
console.log('2');
})
app.listen(8080)
`
Migrate from express
Currently only support express middleware operations, like express.Router and express.use|all|get|post|...()
`js
const useServer = require('use-server');
const app = useServer()
//express middlewares
app.express.get('/a', (req, resp, next)=>{
console.log(req.url);
next()
})
app.express.use(require('compression')())
app.express.use(require('body-parser').json())
`
API
* require('use-server')(): create an app server.
* app.use(...middlewares): add middlewares. A middleware is a function like (req, resp, next)=>{}.
* app.listen(): same as node server.listen() function.
* app.on('error', cb): catch uncaught error in middlewares
* req.basePath: request context, used in router.
* req.forward(url)`: forward the request to another url.