Im в настоящее время с помощью узла & Экспресс для создания моего приложения,Предотвратить HTML рендеринга из запроса GET не-браузер
Моя функция аутентификации выглядит следующим образом:
exports.isAuthenticatedLocal = function(req, res, callback) {
// console.log(req.headers);
if (req.isAuthenticated()) {
callback(null, true);
} else {
res.redirect('/login');
}
};
Это называется в маршрутизаторе пользователей:
router.get('/profile', authController.isAuthenticatedLocal, function(req, res) {
res.render('profile', { user : req.user });
});
Чтобы все работало с страницей профиля, отображаемой в браузере. Однако, если пользователь вошел в систему и отправляет запрос GET
на номер localhost/profile
, вся страница будет отправлена со всеми подробностями пользователя.
Проблема в том, что я использую connect-mongo
для постоянного соединения паспорта.
var MongoStore = require('connect-mongo')(session);
...
var sessionStore = new MongoStore({ mongooseConnection: db.connection });
app.use(session({
key: 'connect.sid',
secret: 'secret',
store: sessionStore,
resave: true,
saveUninitialized: true
}));
Используя простой сеанс не будет вызывать req.isAuthenticated()
из запроса небраузерный GET
и на странице входа в систему, которую я перенаправляет к, оказывается вместо этого (и это хорошо).
app.use(session({
key: 'connect.sid',
secret: 'secret',
resave: true,
saveUninitialized: true
}));
Так как я могу быть в состоянии поддерживать постоянное соединение с Connect-Монго и предотвратить все страницы, которые пользователи с проверкой подлинности на от визуализируемого? Есть ли определенный заголовок, который я должен искать?
Заранее спасибо.