Авторизация через вконтакт в приложении
Суть: нужно вклинить в приложуху авторизацию через вконтакт. Бэкенд приложения должен иметь доступ к некоторым данным со страницы и гарантировать, что пользователь не может тамперить токены и представляться чужой страницей, например.
Приложуха на хтмл5+жс, то есть один и тот же код работает и в веб-морде, и в нативном враппере на мобильниках. В последнем случае открывать для выдачи приложению разрешений браузер вместо официального приложения вконтакта (когда оно установлено) — очевидно, очень плохая идея.
Это всё можно сделать с помощью vk-io или всё-таки целесообразнее полностью на клиентской стороне авторизацию проворачивать? Я, признаться, откровенно запутался в этой сложной неинтуитивной системе и не представляю, с какого бока подбираться к решению проблемы.
Документации к @vk-io/authorization не нашёл; пример в ридми покрывает только авторизацию по логину и паролю, что совсем не наш случай.
Спасибо.
Модуль @vk-io/authorization обычно используется для эмуляции standalone авторизации. В модуле есть функция userAuthorizedThroughOpenAPI() через которую можно проверить Open API авторизацию. Всё остальное рекомендую делать через OAuth 2, в Node.js есть стратегия passport-vkontakte для passport.js.
Еще можно посмотреть в сторону VK ID, есть готовые SDK для iOS/Android/Web и документация
https://platform.vk.com/?p=DocsDashboard&docs=about&version=1.35.0