mirror of
https://github.com/zoriya/flood.git
synced 2026-06-02 11:06:35 +00:00
Add basic auth
This commit is contained in:
@@ -29,6 +29,8 @@
|
||||
"lodash": "^3.10.1",
|
||||
"morgan": "~1.5.1",
|
||||
"object-assign": "^2.0.0",
|
||||
"passport": "^0.3.2",
|
||||
"passport-http": "^0.3.0",
|
||||
"q": "^1.2.0",
|
||||
"react": "^0.14.3",
|
||||
"react-addons-css-transition-group": "^0.14.3",
|
||||
|
||||
+4
-4
@@ -1,12 +1,12 @@
|
||||
var bodyParser = require('body-parser');
|
||||
var cookieParser = require('cookie-parser');
|
||||
var express = require('express');
|
||||
var path = require('path');
|
||||
var favicon = require('serve-favicon');
|
||||
var logger = require('morgan');
|
||||
var cookieParser = require('cookie-parser');
|
||||
var bodyParser = require('body-parser');
|
||||
var path = require('path');
|
||||
|
||||
var routes = require('./routes/index');
|
||||
var client = require('./routes/client');
|
||||
var routes = require('./routes/index');
|
||||
|
||||
var app = express();
|
||||
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
var users = [
|
||||
{
|
||||
username: 'username',
|
||||
password: 'password'
|
||||
}
|
||||
];
|
||||
|
||||
var usersDB = {
|
||||
findByUsername: function(username, callback) {
|
||||
process.nextTick(function() {
|
||||
for (var i = 0, len = users.length; i < len; i++) {
|
||||
var user = users[i];
|
||||
if (user.username === username) {
|
||||
return callback(null, user);
|
||||
}
|
||||
}
|
||||
return callback(null, null);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = usersDB;
|
||||
@@ -13,14 +13,6 @@ var handleClientResponse = function (res) {
|
||||
}
|
||||
}
|
||||
|
||||
router.get('/', function(req, res, next) {
|
||||
|
||||
});
|
||||
|
||||
// router.get('/add', function(req, res, next) {
|
||||
// client.add('get', handleClientResponse(res));
|
||||
// });
|
||||
|
||||
router.post('/add', function(req, res, next) {
|
||||
client.add(req.body, handleClientResponse(res));
|
||||
});
|
||||
|
||||
+21
-3
@@ -1,8 +1,26 @@
|
||||
var express = require('express');
|
||||
var passport = require('passport');
|
||||
var router = express.Router();
|
||||
var Strategy = require('passport-http').BasicStrategy;
|
||||
|
||||
router.get('/', function(req, res, next) {
|
||||
res.render('index', { title: 'Flood' });
|
||||
});
|
||||
var users = require('../db/users');
|
||||
|
||||
passport.use(new Strategy(
|
||||
function(username, password, callback) {
|
||||
users.findByUsername(username, function(err, user) {
|
||||
if (err) { return callback(err); }
|
||||
if (!user) { return callback(null, false); }
|
||||
if (user.password != password) { return callback(null, false); }
|
||||
return callback(null, user);
|
||||
});
|
||||
}
|
||||
));
|
||||
|
||||
router.get('/', passport.authenticate('basic', { session: false }),
|
||||
function(req, res) {
|
||||
res.render('index', { title: 'Flood' });
|
||||
// res.json({ username: req.user.username, email: req.user.emails[0].value });
|
||||
}
|
||||
);
|
||||
|
||||
module.exports = router;
|
||||
|
||||
Reference in New Issue
Block a user