Где правильно иницализировать класс для работы с API при нескольких доступных конфигурациях?
Добрый день. Для работы с API используется библиотека, которая требует для работы несколько параметров (адрес сервера, ID приложения, секрет, токен, refresh и другие данные для работы с oauth). В системе используется несколько различных наборов данных для подключения, причем их количество меняется во время жизни проекта, поэтому они вынесены в отдельную модель Accounts. Есть необходимости инициализировать библиотеку в зависимости от того, какой пользователь сейчас работает в системе (связь через поле account_id в модели User). Я реализовал это через сервис с набором статических методов (получение экземпляра клиента API происходит через MyService::getByUser()), однако хотелось бы использовать для этого механизм Service Provider, но я не знаю как это корректно сделать (конкретно - где именно должно происходить получение Auth::user()->account и последующая инициализация клиента API).
Ссылки на примеры приветствуются, документацию по провайдерам читал :)
Laravel 7.
kafkiansky, тогда как лучше поступить, чтобы сохранить плюшки, которые предоставляет провайдер, но при этом чтобы еще и работало?
Спасибо за быстрый ответ :)
Олег Правдин, а какие плюшки он предоставляет? всего лишь биндит зависимости. напишите фабрику, которая соберет для вас нужный вариант клиента, что-то вроде $apiFactory->createForUser($user)