mirror of
https://github.com/arnaucube/raspberryGPIOhtmlserver.git
synced 2026-02-08 12:16:42 +01:00
servidor funciona, gpio desabilitat
This commit is contained in:
95
node_modules/connect/lib/middleware/static.js
generated
vendored
Executable file
95
node_modules/connect/lib/middleware/static.js
generated
vendored
Executable file
@@ -0,0 +1,95 @@
|
||||
/*!
|
||||
* Connect - static
|
||||
* Copyright(c) 2010 Sencha Inc.
|
||||
* Copyright(c) 2011 TJ Holowaychuk
|
||||
* MIT Licensed
|
||||
*/
|
||||
|
||||
/**
|
||||
* Module dependencies.
|
||||
*/
|
||||
|
||||
var send = require('send')
|
||||
, utils = require('../utils')
|
||||
, parse = utils.parseUrl
|
||||
, url = require('url');
|
||||
|
||||
/**
|
||||
* Static:
|
||||
*
|
||||
* Static file server with the given `root` path.
|
||||
*
|
||||
* Examples:
|
||||
*
|
||||
* var oneDay = 86400000;
|
||||
*
|
||||
* connect()
|
||||
* .use(connect.static(__dirname + '/public'))
|
||||
*
|
||||
* connect()
|
||||
* .use(connect.static(__dirname + '/public', { maxAge: oneDay }))
|
||||
*
|
||||
* Options:
|
||||
*
|
||||
* - `maxAge` Browser cache maxAge in milliseconds. defaults to 0
|
||||
* - `hidden` Allow transfer of hidden files. defaults to false
|
||||
* - `redirect` Redirect to trailing "/" when the pathname is a dir. defaults to true
|
||||
* - `index` Default file name, defaults to 'index.html'
|
||||
*
|
||||
* @param {String} root
|
||||
* @param {Object} options
|
||||
* @return {Function}
|
||||
* @api public
|
||||
*/
|
||||
|
||||
exports = module.exports = function(root, options){
|
||||
options = options || {};
|
||||
|
||||
// root required
|
||||
if (!root) throw new Error('static() root path required');
|
||||
|
||||
// default redirect
|
||||
var redirect = false !== options.redirect;
|
||||
|
||||
return function static(req, res, next) {
|
||||
if ('GET' != req.method && 'HEAD' != req.method) return next();
|
||||
var path = parse(req).pathname;
|
||||
var pause = utils.pause(req);
|
||||
|
||||
function resume() {
|
||||
next();
|
||||
pause.resume();
|
||||
}
|
||||
|
||||
function directory() {
|
||||
if (!redirect) return resume();
|
||||
var pathname = url.parse(req.originalUrl).pathname;
|
||||
res.statusCode = 301;
|
||||
res.setHeader('Location', pathname + '/');
|
||||
res.end('Redirecting to ' + utils.escape(pathname) + '/');
|
||||
}
|
||||
|
||||
function error(err) {
|
||||
if (404 == err.status) return resume();
|
||||
next(err);
|
||||
}
|
||||
|
||||
send(req, path)
|
||||
.maxage(options.maxAge || 0)
|
||||
.root(root)
|
||||
.index(options.index || 'index.html')
|
||||
.hidden(options.hidden)
|
||||
.on('error', error)
|
||||
.on('directory', directory)
|
||||
.pipe(res);
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* Expose mime module.
|
||||
*
|
||||
* If you wish to extend the mime table use this
|
||||
* reference to the "mime" module in the npm registry.
|
||||
*/
|
||||
|
||||
exports.mime = send.mime;
|
||||
Reference in New Issue
Block a user