Я реализовал oAuth в php (в настоящее время для twitter), и, как я читал в нескольких учебниках, вы должны хранить токен доступа в db для будущего использования. Однако я не вижу, как вы знаете, если у вас есть токен доступа, который хранится для определенного пользователя, чтобы решить, следует ли вытащить его из db или восстановить его. Вот поток, описывающий мой вопрос:
Основной рабочий процесс для oAuth ясен, однако неясно, как обращаться с возвращающимися пользователями и какие данные должны быть сохранены или нет.
Миллион спасибо!
Вы не должны регенерировать токен для каждого доступа. Создайте его только тогда, когда он истек. Я создал приложение twitter, используя OAuth. Здесь мой поток:
при входе пользователя, я проверю, есть ли у них токен в БД
1.1. Если он не существует, выполните проверку подлинности, а затем сохраните и используйте полученный токен
1.2. Если он существует, используйте его.
1.2.1. Если твиттер не жалуется, то токен все еще действителен, используйте его.
1.2.2. Если твиттер жаловался, то токен истек. Вернитесь к 1.1.
1.2.3. Если после x повторить твиттер все еще жаловался. Что-то не так, уведомите администратора!
Вот графическое объяснение: