UNPKG

687 BJavaScriptView Raw
1/**
2 * HTTP Basic Auth for Node.js
3 *
4 * @package basic
5 * @author Andrew Sliwinski <andrew@diy.org>
6 */
7
8/**
9 * Dependencies
10 */
11var basic = require('./basic');
12
13/**
14 * Export
15 */
16module.exports = function (handler) {
17 // Default handler method
18 if (typeof handler !== 'function') {
19 handler = function (user, pass, callback) {
20 callback(null);
21 };
22 }
23
24 // Return middleware
25 return function (req, res, callback) {
26 var header = req.headers.Authorization || req.headers.authorization;
27 if (!header) return callback(401);
28
29 var auth = basic(header);
30 handler(auth.username, auth.password, callback);
31 };
32};
\No newline at end of file