resource-http
provides an HTTP API
Last updated 2 years ago by marak .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install resource-http 
SYNC missed versions from official npm registry.

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.

Current Tags

  • 1.3.0                                ...           latest (2 years ago)

16 Versions

  • 1.3.0                                ...           2 years ago
  • 1.2.0                                ...           3 years ago
  • 1.1.1                                ...           3 years ago
  • 1.1.0                                ...           3 years ago
  • 1.0.0                                ...           3 years ago
  • 0.9.4                                ...           4 years ago
  • 0.9.3                                ...           4 years ago
  • 0.9.1                                ...           4 years ago
  • 0.9.0                                ...           4 years ago
  • 0.8.1                                ...           4 years ago
  • 0.8.0                                ...           4 years ago
  • 0.6.1                                ...           5 years ago
  • 0.6.0                                ...           5 years ago
  • 0.5.1                                ...           5 years ago
  • 0.4.2                                ...           6 years ago
  • 0.4.0                                ...           6 years ago
Maintainers (1)
Downloads
Today 0
This Week 2
This Month 22
Last Day 2
Last Week 6
Last Month 47
Dependencies (18)
Dev Dependencies (2)

Copyright 2014 - 2017 © taobao.org |