Favicon:
By default serves the connect favicon, or the faviconlocated by the given path.
path
Options:
maxAge
Examples:
Serve default favicon:
connect() .use(connect.favicon())
Serve favicon before logging for brevity:
connect() .use(connect.favicon()) .use(connect.logger('dev'))
Serve custom favicon:
connect() .use(connect.favicon('public/favicon.ico'))
module.exports = function favicon(path, options){ var options = options || {} , path = path || __dirname + '/../public/favicon.ico' , maxAge = options.maxAge || 86400000 , icon; // favicon cache return function favicon(req, res, next){ if ('/favicon.ico' == req.url) { if (icon) { res.writeHead(200, icon.headers); res.end(icon.body); } else { fs.readFile(path, function(err, buf){ if (err) return next(err); icon = { headers: { 'Content-Type': 'image/x-icon' , 'Content-Length': buf.length , 'ETag': '"' + utils.md5(buf) + '"' , 'Cache-Control': 'public, max-age=' + (maxAge / 1000) }, body: buf }; res.writeHead(200, icon.headers); res.end(icon.body); }); } } else { next(); } }; };
Favicon:
By default serves the connect favicon, or the favicon
located by the given
path
.Options:
maxAge
cache-control max-age directive, defaulting to 1 dayExamples:
Serve default favicon:
Serve favicon before logging for brevity:
Serve custom favicon:
Source