У меня есть 2 основных страницы. Одна страницаАвторизация пользователя в Nodejs
mywebsite.com/login
mywebsite.com
/Логин страница показывает логин и пароль страницы. Когда пользователь успешно проходит аутентификацию, открывается страница mywebsite.com.
mywebsite.com/login идет в login.js файл на сервере
mywebsite.com/ идет в index.js файл на сервере
Я хочу сохранить сеанс через обе страницы. Если пользователь не зарегистрирован, я хочу, чтобы mywebsite.com/ перенаправлялся на/login.
Я читал о req.session, но я не знаю, как узнать о req.session значение login.js внутри index.js.
app.js
var login = require('./routes/login');
var routes = require('./routes/index');
var app = express();
app.use('/login', login);
app.use('/', routes);
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
login.js
router.get('/', function(req, res, next) {
res.render('login', { title: 'Login' });
});
router.post('/isEmployeeAdmin', function(req, res, next) {
console.log("req is: ", req.body);
employeeController.isEmployeeAdmin(req.body, function (response, data) {
response.data = data;
if (!response.success) {
console.error("error is: ", response.message);
res.status(200).send(response);
return;
}
res.status(200).send(response);
console.log("success in finding if employee is admin ", response.data);
});
});
index.js
router.get('/', function(req, res, next) {
if(req.session.loggedIn)
res.render('index', { title: 'WinGoku' });
else
res.status(404).send(); // or redirect to login.ejs file
});
Что я делаю неправильно? Как мне это сделать?
Вот базовая информация об использовании промежуточного программного обеспечения для сеансов - http://www.codexpedia.com/node-js/a-very-basic-session-auth-in-node-js-with-express-js/ – metame
Возможно дублировать [как реализовать login auth в node.js] (http://stackoverflow.com/questions/7990890/how-to-implement-login-auth-in-node-js) – metame