Как программно начать сеанс OAuth?

Я использую API InfusionSoft для сохранения содержимого формы, заполненной на веб-сайте. API использует OAuth, и из того, что я могу сказать, нет способа провести пожизненный сеанс.

Способ, которым OAuth работает, заключается в том, что он предназначен для входа пользователя в систему, если срок его сеанса истек, точно так же, как вход на веб-сайт. Это явно не подходит для API, но я уверен, что это не необычное требование.

У меня есть начальный токен, но после того, как он истекает, что тогда? Единственное, о чем я могу думать, это иметь работу cron, которая запускается ежечасно для обновления токена доступа (есть метод refreshAccessToken).

1 ответ

Решение

Вам необходимо хранить как токен доступа (краткосрочный - он действителен в течение 24 часов), так и токен обновления (долгосрочный).

Вам нужно будет только вызвать метод refreshAccessToken в начале каждого сеанса. Этот метод возвратит новый токен доступа и новый токен обновления.

Используйте новый токен доступа для текущего сеанса при выполнении запросов API. Токен доступа будет действителен в течение 24 часов (время от времени меняется).

Сохраните новый токен обновления и используйте его снова для следующего сеанса.

Другие вопросы по тегам