5.2.0 • Published 6 years ago
@reperio/hapijs-starter v5.2.0
hapijs-starter
Configuration Options
Runs a fully-configured HAPI server with Winston logging.
Setup
All you need to do to run the server is to call it in an async method when your application starts.
import {Server} from 'hapijs-starter';
import * as path from 'path';
async function startServer() : Promise<void> {
const server = new Server({});
await server.initialize();
await server.registerRoutesFromDirectory(path.resolve(__dirname, './api'));
await server.startServer(false);
}
startServer();| Property | Type | Default Value | Details |
|---|---|---|---|
| host | string | '0.0.0.0' | HapiJS host binding |
| port | number | 3000 | HapiJS port binding |
| cors | boolean | true | Adds a global route for HTTP OPTIONS requests that responds with options headers to allow CORS requests |
| statusMonitor | boolean | true | Adds the hapijs-status-monitor plugin that exposes a /status route to get basic server status information |
| defaultRoute | boolean | true | Adds a default route that responds with 'hello' to be used for heartbeat requests from reverse proxies |
| logDirectory | string | ./logs | directory to store file based logs |
| logLevel | string | 'debug' | log level for winston logging |
| logJson | boolean | true | should the logs be in JSON format? |
| logDefaultFileTransport | boolean | true | Add the default file transport to the logger |
| logDefaultConsoleTransport | boolean | true | Add the default console transport to the logger |
| logDefaultTraceTransport | boolean | true | Add the default trace transport to the logger |
| logAddtionalLoggerTransports | Array | [] | Additional transports to add to the app logger |
| logAddtionalTraceTranceports | Array | [] | Additional transports to add to the trace logger |
| logAutoTraceLogging | boolean | true | Automatically log http requests to the trace log |
| authEnabled | boolean | false | Enable JWT authentication |
| authSecret | string | null | JWT secret used to validate JWTs. Required if authEnabled === true |
| authValidateFunc | (decoded: any, request: any, callback: any) => any; | (decoded, request, callback) = { return { isValid: true };} | Additional validation function based on hapi-auth-jwt2 validation function |