1.1.1 • Published 2 years ago
@tonoid/express v1.1.1
@tonoid/express
Express plugin for @tonoid/helpers
Init options
port: (Number, defaults:process.env.EXPRESS_PORT || process.env.PORT || 80) Express http port.host: (String, defaults:process.env.EXPRESS_HOST || '0.0.0.0) Express http host.extraFirstMiddlewares(app, { express }): (Function) Extra Middle to add just after the express initilizationextraMiddlewaresAfterEndpoint(app, { express }): (Function) Extra Middle to add to the express app after endpointsextraMiddlewaresAfterNotFound(app, { express }): (Function) Extra Middle to add to the express app after handling 404extraMiddlewaresAfterError(app, { express }): (Function) Extra Middle to add to the express app after handling errornotFoundHandler(isHTML)(res, req): (Function) Page not found handlerisHTML: (Boolean, default:false) If the error message should render in HTMLjsonLog: (Boolean, default:process.env.NODE_ENV === 'production) If we want to output the logs in JSON format (useful when we use Stackdriver)endpoints: (defaults:[]):endpoints[].path: Endpoint pathendpoints[].handler: Endpoint handler (function)
rawBodyEndpoints: (defaults:[]): List of endpoints that need raw body (useful for stripe webhook, or file uploads)enableJsonBody: (default:true)enableFormBody: (default:true)enableCookies: (default:true)enableHealth: (default:true)enableCompression: (default:true)removeTrailingSlashes: (default:true)timeout: (default:90s)
Environment variables
EXPRESS_HOST: (default:0.0.0.0) HTTP hostEXPRESS_PORT: (default:80) HTTP portEXPRESS_RAW_LIMIT: (default:50mb) Limit for raw body parserEXPRESS_JSON_LIMIT: (default:10mb) Limit for json body parserEXPRESS_BODY_LIMIT: (default:10mb) Limit for body body parserEXPRESS_TIMEOUT: (default:90s) Timeout to answer
Exported context attributes
.close(): Close mongo client.app: Express app instance.httpServer: http server instance
Handler available parameters
.getRouter(): Get database instance.throwError(): Throw an error with errorCode (HTTP code).app: Express app instance.asyncHandler(): Async handler alias
Usage example
You may check a full example on the folder example.
const { init } = require('@tonoid/helpers');
const express = require('@tonoid/express');
const rootHandler = ({ getRouter, asyncHandler }) => {
const router = getRouter();
router.get('/', asyncHandler((req, res) => {
return { root: true };
}));
router.get('/foo', asyncHandler((req, res) => {
return { foo: true };
}));
return router;
};
init([
express({
port: 3000,
endpoints: [
{
path: '/',
handler: rootHandler,
},
],
}),
]);Credits
This module is maintained by Simo Elalj @tonoid
1.1.1
2 years ago
1.1.0
2 years ago
1.0.0
2 years ago
0.0.20
2 years ago
0.0.21
2 years ago
0.0.19
3 years ago
0.0.18
4 years ago
0.0.17
4 years ago
0.0.14
4 years ago
0.0.15
4 years ago
0.0.16
4 years ago
0.0.13
4 years ago
0.0.11
4 years ago
0.0.12
4 years ago
0.0.10
4 years ago
0.0.9
4 years ago
0.0.8
5 years ago
0.0.7
5 years ago
0.0.6
5 years ago
0.0.5
5 years ago
0.0.4
5 years ago
0.0.3
5 years ago
0.0.2
5 years ago
0.0.1
5 years ago