Neanderthals Paint Mammals

    hops-server

    9.7.0 • Public • Published

    Hops Server

    deprecated

    This package is deprecated. Please use hops-express instead.

    npm

    Hops server is a small collection of shared functionality that can be used in express-like interfaces to register the hops-middleware.

    It also exports a simple middleware that takes care of rewriting the paths of incoming http requests based on the values set in hops-config.

    Exports:

    • rewritePath(request, response, next) => void
      rewritePath is an express-style middleware that adds a trailing slash to the url of the incoming request.

    • registerMiddleware(app, middleware) => void
      registerMiddleware is a helper function that registers a wildcard middleware for every location defined in the hops-config, if available. Otherwise it registers the given middleware for a wildcard route at the root.

    • run(app, callback) => void
      run is a helper function that starts the express-like server with the parameters defined in hops-config.

    • bootstrap(app, hopsConfig) => void
      teardown(app, hopsConfig) => void These functions allow to customize the server through hops-config. It is possible to define hopsConfig.bootstrapServer and hopsConfig.teardownServerto override these functions and execute some custom logic on the app object.

    Target Audience

    If you want to build an express-like server and reuse the hops-config while doing so, then this middleware will help dealing with the locations and basePath config.

    Example

    app.js

    var path = require('path');
    var express = require('express');
    var server = require('hops-server');
    var hopsConfig = require('hops-config');
     
    // middleware generated by hops-build, based on the webpack node config
    var pathToGeneratedMiddleware = path.join(hopsConfig.cacheDir, 'server.js');
     
    // generic Express server application
    var app = express();
    app.use(server.rewritePath);
     
    // bootstrap and teardown provide hooks to customize the server through hops-config
    server.bootstrap(app, hopsConfig);
    server.registerMiddleware(require(pathToGeneratedMiddleware));
    server.teardown(app, hopsConfig);
     
    // actually run application
    server.run(app);

    Install

    npm i hops-server

    DownloadsWeekly Downloads

    1

    Version

    9.7.0

    License

    MIT

    Last publish

    Collaborators

    • aithir
    • zaubernerd
    • robin-drexler
    • dmbch