Вы должны внедрить механизм аутентификации через cookie или сессию.После успешного входа в систему вы будете устанавливать cookie в браузере, и при каждом запросе HTTP у вас будет доступ к данным cookie, чтобы проверить наличие запроса в браузере зарегистрированного пользователя или нет.
Создайте функцию промежуточного программного обеспечения, которая будет проверять наличиедопустимые данные cookie в объекте req для каждого запроса API.
Если пользователь не вошел в систему и не пытается получить доступ к определенному ресурсу с помощью вызова API, запрос будет неавторизован (401
).
Вам необходимо изменить свой API входа примерно так.
function login(req, res){
// Your logic for DB checks and to validate credentials will go here
// On valid credentials, you can set the cookie like this
res.cookie(cookieName, cookieData, cookieOptions);
}
и функция промежуточного программного обеспечения, которая проверяет аутентификацию, может выглядеть следующим образом
function checkSession(req, res, next) {
if(!req.cookies || !Object.keys(req.cookies).length){
res.send(401)
}
else next();
}
Более подробную информацию о том, какиспользовать cookie-парсер здесь.