Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    resource-httppublic

    http

    a resource for creating and configuring express http servers

    Features

    • Easily configurable through simple options hash
    • Based on latest Express 4.x.x
    • Static File Support
    • Session Support
    • Custom Web Domain support
    • HTTPS / SSL / Enforce SSL / Only SSL options
    • Websockets
    • OAuth Single Sign On through Passport
    • View Support through View module
    • Body Parser / File Uploads
    • Auto-port detection
    • i18n support through 18n-2
    • Has ability to white-label multiple Views and domains onto single site

    Example

    see: ./examples/server.js

    var http = require('resource-http');
     
    // all options are optional and will default to a reasonable value if left unset
    http.listen({
     port: 8888,
     wss: true, // enables websocket server
     host: 'localhost',
     root: __dirname + "/public",
     view: __dirname + "/view",
     cacheView: true, // caches all local view templates and presenters into memory
     uploads: false,
     https: false, // enables https / ssl, requires key, cert, ca
     autoport: true, // will auto-increment port if port unavailable
     bodyParser: true, // parse incoming body data automatically, disable for streaming
     sslRequired: false, // redirects all http traffic to https
     onlySSL: false, // will only start https server, no http services
     noSession: false, // removes all session handling from server
     nodeinfo: false, // makes /_info route available for node information
     nodeadmin: false, // makes /_iadmin route available for node administration
     key: fs.readFileSync(__dirname + "/ssl/server.key").toString(),
     cert: fs.readFileSync(__dirname + "/ssl/cert.crt").toString(),
     ca: fs.readFileSync(__dirname + "/ssl/ca.crt").toString(),
     secret: "supersecret", // session password
     redis: { // optional redis store for sessions, requires `connect-redis` package
       host: "0.0.0.0",
       port: 6379,
       password: "foobar"
     },
     auth: {
       basicAuth: {
         username: 'admin',
         password: 'admin'
       }
     }
    }, function(err, app){
     console.log(app.server.address())
     // from here, app is a regular Express.js server
     app.get('/foo', function (req, res){
       res.end('got /foo');
     });
    });

    Warning:

    The nodeinfo and nodeadmin boolean options should not be set to true on unsecured servers, as they may expose sensitive systems information.

    install

    npm i resource-http

    Downloadslast 7 days

    134

    version

    1.3.0

    license

    MIT

    repository

    github.com

    last publish

    collaborators

    • avatar