Я начинаю новый проект, который должен будет управлять множеством токенов доступа для множества различных API. Поэтому мне было интересно, если бы было хорошей практикой предоставлять токены доступа различным классам, реализующим вызовы API, или эти токены должны быть лучше инкапсулированы.
В настоящее время я вижу два варианта:
- каждый класс API создает свои собственные запросы (в основном запросы HTTPS), получает токен доступа из интерфейса аутентификации и добавляет этот токен в запрос способом, требуемым для этого API
- интерфейс аутентификации принимает запросиз класса API и добавляет токен к нему перед фактической отправкой запроса.
При последнем варианте класс API никогда не увидит токен, но будет сложно предвидеть все варианты добавления токена в запрос (заголовок, параметр GET или полностью другойпути).
Какой должна быть лучшая практика в этом случае?