авторизовать пользователя с передачей данных на бэкенд?
Столкнулся с той проблемой, что токен, который выдает SDK привязан к IP устройства. Соответственно передача токена на бэкенд для похода в API не имеет смысла, так как IP устройства и сервера не совпадают.
Использование secure.checkToken https://vk.com/dev/secure.checkToken позволяет верифицировать на бэкенде, что токен выдан пользователю с заданным id. Но не позволяет верифицировать все остальные поля (email и тп).
Кто как справлялся с проблемой? Не охота делать авторизацию через браузер, чтобы получить токен привязанный к IP бэкенда.
если токен нужен бэку, то пусть он его и получает. sdk не для этих целей, я думаю
Google Sign In, Yandex Passport, например, такую возможность предоставляют.
а в Сша зарплата выше, чем в рф
Так и расходы с налогами выше тоже 😏
я это к тому, что нужно пользоваться тем, что есть, а не «у них вот есть такая фича, а тут нет»
Это странно, что такой фичи нет. По сути, полностью отсутствует возможность серверной авторизации через приложение VK. Собственно весь смысл SDK - это авторизация через нативное приложение.
весь смысл sdk это авторизоваться и дергать апи из под того устройства с которого был вход. Привязка к айпи это нормально, тем более на андроиде.
А как вы провяжете пользователя на бэкенде и пользователя на устройстве?
пользователь на бэкенде и пользователь на устройстве это разные сущности?
Пользователь на устройстве имеет куку / токен, который идентифицирует его на на бэкенде.
Добавление VKScope.OFFLINE убирает валидацию по IP. Но без понятия почему. По описанию: "Доступ к API в любое время (при использовании этой опции параметр expires_in, возвращаемый вместе с access_token, содержит 0 — токен бессрочный). Не применяется в Open API. "
Обсуждают сегодня