Авторизация в Вконтакте в NodeJs app на Amazon используя passport-vkontakte. Из-за чего ошибка «VkontakteAPIError»?

Подскажите пожалуйста, то ли лыжи не едут, то ли я дурак и не вижу очевидного)

Делаю авторизацию с помощью passport-vkontakte для ВК. Локально все отрабатывает отлично. В частности callback выставлен что-то вроде http://localhost:1337/auth/vkontakte/callback. В настройках приложения ВК тоже выставил http://localhost:1337.

Но при переносе на amazon сломалось, причем довольно странно. Я сменил callback и site address в ВК на
http://my-amazon-domain.tk:1337/auth/vkontakte/callback
, все по идее то должно было бы заработать, но получаю exception

VkontakteAPIError: Validation required: please open redirect_uri in browser


При попытке сделать попрошенное open redirect_uri in browser валится такое:

TokenError: Code is invalid or expired.,

Что в принципе и не странно.

Может кто сталкивался, и есть решение проблемы?
Подсказали, что может быть проблема в самом amazon, но может все-таки есть решение проблемы?
  • Вопрос задан
  • 5248 просмотров
Пригласить эксперта
Ответы на вопрос 4
@alexeimoisseev
https://vk.com/dev/need_validation
В некоторых случаях (например при попытке зайти в вк из заграницы) делается запрос на дополнительную валидацию.

passport-vkontakte после успешной авторизации по OAuth2 делает еще дополнительный запрос в API вконтакте, чтобы получить данные о текущем залогиненном пользователе. И вот в этот момент случается проблема с этим редиректом.
Но редирект там отправляется на https://oauth.vk.com/blank.html# и как это обработать на сервере - непонятно.

У меня такое же самое, в хостинге за границей. Но не на амазоне. Решения пока не нашел.
Вот Issue на гитхабе по этому поводу: https://github.com/stevebest/passport-vkontakte/is...
Ответ написан
@dbezrukov
Убедитесь, что тип вашего приложения ВКонтакте выбран верно.
Для авторизации с сайта должен быть указан тип "Веб-сайт", для мобильного приложения - "Standalone".
Ответ написан
Комментировать
@jjek
Может установить демона VPN на сервере и открыть redirect_uri в браузере?
Ответ написан
Комментировать
@Yashko
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы