У меня есть проблемы с весной-social-api для linkedin. По истечении 60 дней токен доступа истекает, и я не могу использовать его для публикации на временной шкале для пользователя токена доступа. Есть способ пройти эту ошибку?Linkedin Обновление токена доступа
ответ
Повторяя мой ответ от http://forum.springsource.org/showthread.php?138943-Linkedin-refresh-accesstoken:
Хотя я не могу честно сказать, что я пытался сделать это с LinkedIn, вы должны быть в состоянии получить соединение (через ConnectionRepository) и вызывать обновление() на нем. Фактически, это должно работать с любым API, защищенным OAuth2 (за исключением Facebook, который не совсем играет по спецификации OAuth2).
Я еще не пробовал это с LinkedIn, потому что до недавнего времени Spring Social работала с LinkedIn через их аутентификацию OAuth 1.0a. Но это звучит неплохо, чтобы проверить.
Поэтому Spring Social поддерживает обновление токенов доступа. Но это ручное усилие с вашей стороны: (1) поймать ExpiredAuthorizationException, (2) использовать ConnectionRepository для извлечения соединения и (3) refresh() для обновления соединения.
Что было бы более удивительным, если Spring Social каким-то образом поймала это ExpiredAuthorizationException для вас, автоматически вызовет refresh(), а затем повторно запустит вызов, вызвавший исключение; делая его бесшовным для вызывающего. Это то, о чем я размышлял, но пока нет никакой реализации.
Одним из возможных решений является аспект. Но разработчик должен будет настроить его для надлежащего переноса любых типов привязки API (например, LinkedInTemplate), которые использует приложение. Еще один вариант, о котором я подумал, - это выкопать в AbstractOAuth2ApiBinding и настроить RestTemplate, который он предоставляет для обработки этого исключения. Это немного зависит от того, может ли он работать, но если это сработает, тогда любая привязка API, которая расширяет AbstractOAuth2ApiBinding, автоматически получит возможность обновления ... кроме того, снова для Facebook, который не играет по правилам OAuth2.
- 1. Обновление токена доступа LinkedIn автоматически
- 2. Создание токена доступа Linkedin
- 3. Обновление токена доступа OpenStack
- 4. Обновление токена доступа для Fitbit
- 5. Срок действия токена доступа/обновление
- 6. API LinkedIn: что определяет время истечения срока доступа токена доступа?
- 7. Может ли поток обновления токена доступа LinkedIn выполнять на сервере?
- 8. Автоматическое обновление Linkedin API после разрешения доступа
- 9. Хранение токена доступа и обновление токена в KeyChain
- 10. Как проверить обновление токена доступа google с помощью токена обновления
- 11. Клиентский секрет + обновление токена доступа весной oauth2
- 12. Обновление токена доступа только при необходимости
- 13. Как получить профиль пользователя в linkedin с помощью токена доступа
- 14. Linkedin oauth2 получить профиль пользователя из токена доступа
- 15. Получить токен доступа Linkedin OAuth2 от токена и токена в Android
- 16. Обновление токена Firebase
- 17. Обновление токена Cygnus oauth
- 18. OAuth 2.0: повторное обновление токена
- 19. Linkedin API недействительный токен доступа
- 20. Как сохранить токен доступа LinkedIn в Android?
- 21. Обновить токен доступа LinkedIn с помощью Scribe
- 22. Возврат пользовательского токена вместо токена доступа
- 23. Использование токена доступа Twitter
- 24. OAuth2 Формат токена доступа
- 25. получить значение токена доступа
- 26. Получение правильного токена доступа
- 27. Обновление токена OAuth PayPal
- 28. Обновление токена GCM
- 29. Невозможно проверить маркер доступа с LinkedIn API
- 30. LinkedIn ошибка доступа маркер поколения
Проверка документов здесь Я думаю, что механизм LinkedIn для «обновления» токена доступа на самом деле совпадает с исходным процессом авторизации. Похоже, что они не предоставляют токены обновления, которые могут быть использованы для получения программных программных токенов доступа с помощью API-интерфейса бэкэнда. refresh() не будет обрабатывать этот случай, не так ли? Похоже, вам нужно будет периодически отправлять пользователей через поток авторизации для поддержания нового токена. http://developer.linkedin.com/documents/handling-errors-invalid-tokens – sdouglass
Право. После того, как я написал этот ответ, я понял, что LinkedIn не реализует токены обновления и вместо этого требует повторного запуска потока авторизации (Facebook делает это так же). Это немного раздражает, что он отличается от спецификации, но, возможно, более безопасен таким образом. В любом случае, ReconnectFilter от Spring Social должен отлично справляться с этим сценарием. Теперь он доступен в Spring Social 1.1.0.M3. –