henning

    3.0.0 • Public • Published

    henning

    Server-level thurston validation for hapi.

    NPM Version Build Status Coverage Status Dependencies Dev Dependencies

    Table of Contents

    Installation

    Install via NPM.

    $ npm install henning

    Usage

    Register the package as a server plugin to enable validation for each route that parses — parse: true — and creates a Readable stream for each file in the request payload — output: 'stream'. 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 Henning = require('henning');
     
    try {
        const server = new Hapi.Server();
     
        server.route({
            options: {
                payload: {
                    output: 'stream',
                    parse: true
                }
                // go nuts
            }
        });
     
        await server.register({
            register: Henning,
            options: {
                // Allow png files only
                whitelist: ['image/png']
            }
        });
     
        await server.start();
    }
    catch (err) {
        throw err;
    }

    Supported File Types

    The same as file-type.

    Install

    npm i henning

    DownloadsWeekly Downloads

    9

    Version

    3.0.0

    License

    BSD-3-Clause

    Last publish

    Collaborators

    • ruiquelhas