3.0.0 • Published 6 years ago

fischbacher v3.0.0

Weekly downloads
2
License
BSD-3-Clause
Repository
github
Last release
6 years ago

fischbacher

Server-level lafayette validation for hapi.

NPM Version Build Status Coverage Status Dependencies Dev Dependencies

Table of Contents

Installation

Install via NPM.

$ npm install fischbacher

Usage

Register the package as a server plugin to enable validation for each route that parses — parse: true — and creates a temporary file copy of the request payload — output: 'file'. For every other route with a different configuration, the validation is skipped.

If the validation fails, a joi-like 400 Bad Request error is returned alongside an additional content-validation: failure response header. If everything is ok, the response will ultimately contain a content-validation: success header.

Example

const Hapi = require('hapi');
const Fischbacher = require('fischbacher');

try {
    const server = new Hapi.Server();

    server.route({
        options: {
            payload: {
                output: 'file',
                parse: true
            }
            // go nuts
        }
    });

    await server.register({
        plugin: Fischbacher,
        options: {
            // Allow png files only
            whitelist: ['image/png']
        }
    });

    await server.start();
}
catch (err) {
    throw err;
}

Supported File Types

The same as file-type.

3.0.0

6 years ago

2.0.3

7 years ago

2.0.2

8 years ago

2.0.1

8 years ago

2.0.0

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago