Ошибки в консоли
istoro opened this issue · comments
Постоянно получаю ошибки в консоль, вида:
VkontakteAuthorizationError: User denied your request
И т.п.
Как их вообще отключить?
Никакая сила мне может заставить пользователя согласиться на авторизацию - ошибки отмены авторизации были, есть и будут. Обрабатывайте их и не выводите в консоль.
Каким образом я могу их обрабатывать?
Это зависит от того, какого рода приложение вы делаете. Если вы делаете веб-страницу профиля пользователя, то при отказе авторизации вы, скорее всего, хотите каким-то образом сообщить пользователю, что он не прав, и нужно все-таки разрешить авторизацию. Это можно сделать, например, перенаправив его на страницу с грустным сообщением. Для этого предусмотрен параметр failureRedirect
.
Если очень хочется, то можно дополнительно обработать ошибку - например, внести ее в лог.
Внимательно изучите документацию модуля Passport, в котором происходит основная механика по авторизации.
Вот адаптированный пример из документации на все случаи жизни. Скорее всего, в вашем случае можно обойтись и более простыми средствами. Они тоже описаны в документации :)
app.get('/login', function(req, res, next) {
passport.authenticate('vkontakte', function(err, user, info) {
if (err) { return next(err); } // << тут можно сделать что-нибудь другое.
// ошибки нет, можно продолжать.
// ...
})(req, res, next);
});