Динамические таблицы 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*/})

Вместо паспорта вы можете использовать свою функцию промежуточного программного обеспечения.

Другие вопросы по тегам