Динамические таблицы NodeJS (фильтр, поиск) и базовая безопасность
У меня есть приложение NodeJS Express, в котором я хочу реализовать базовый список таблиц, который может содержать много записей. Мне понадобится разбиение на страницы, сортировка и поиск с использованием одного поля ввода. Для того, чтобы просто заполнить эту таблицу, без какой-либо другой функции я выполняю запрос к базе данных в MongoJS и выполняю ее как обычно (передавая параметр в результате и используя его с шаблонами Handlebars.
Чтобы добавить дополнительные функции, я изучаю Dynatables ( http://www.dynatable.com/). Однако на ум приходит одна серьезная проблема:
Поскольку Dynatables требует GET-запрос для возврата JSON, я должен предоставить API-запрос для возврата необходимой информации. Однако как я могу гарантировать, что этот API не может использоваться кем-либо, кто не вошел в приложение? Прямо сейчас я определяю вход в систему с помощью переменных Session.
Кто-нибудь может указать мне правильное направление?
1 ответ
Как вы проверяете, что эта начальная страница предоставляется аутентифицированным пользователям? Вы используете что-то вроде passport.is? Если да, это так же просто, как добавить промежуточный маршрут к конечной точке JSON.
Пример:
app.get('/app/data', passport.authenticate('local'), function (req, res) {/*get JSON here*/})
Вместо паспорта вы можете использовать свою функцию промежуточного программного обеспечения.