Last active
December 22, 2015 04:38
-
-
Save jorinvo/6417908 to your computer and use it in GitHub Desktop.
Some refactoring. What is nicer?
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var passport = require('passport'); | |
var BasicStrategy = require('passport-http').BasicStrategy; | |
var config = require('./config'); | |
passport.use(new BasicStrategy(function(user, pass, done) { | |
if (user !== config.auth.user) { | |
return done(null, false, { | |
message: 'Unknown user ' + user | |
}); | |
} | |
if (pass !== config.auth.pass) { | |
return done(null, false, { | |
message: 'Invalid password' | |
}); | |
} | |
done(null, config.auth); | |
})); | |
// sends 401 if unauthorized | |
module.exports = passport.authenticate('basic', { session: false }); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var passport = require('passport'); | |
var BasicStrategy = require('passport-http').BasicStrategy; | |
var config = require('./config'); | |
var strategy = new BasicStrategy(function (user, password, done) { | |
userMatches(user, done) && passMatches(password, done) && done(null, config.auth); | |
}); | |
passport.use(strategy); | |
function userMatches (user, done) { | |
if (user === config.auth.user) return true; | |
var err = { message: 'Unknown user ' + user }; | |
done(null, false, err); | |
} | |
function passMatches (password, done) { | |
if (password === config.auth.password) return true; | |
var err = { message: 'Invalid password' }; | |
done(null, false, err); | |
} | |
// sends 401 if unauthorized | |
module.exports = passport.authenticate('basic', { session: false }); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment