Упрощение интеграции API с Http-фасадом Laravel
📝 В статье рассматривается подход к интеграции сторонних API в Laravel с использованием фасада Http. Использование фасада Http Laravel обеспечивает последовательную структуру для всех интеграций сторонних сервисов, упрощает тестирование и мокирование, а также уменьшает зависимость от внешних SDK.
🔍 В примере в статье демонстрируется интеграция API Google Books. Первым шагом является добавление конфигурации API Google Books, включая ключ API, в переменные окружения Laravel. Затем автор создает переиспользуемый класс ApiRequest для построения HTTP-запросов к API с возможностью легкой настройки заголовков, параметров запроса и данных тела.
🚀 Далее представлен абстрактный класс ApiClient, служащий базовым классом для выполнения HTTP-запросов к любому API. Класс предоставляет метод для отправки ApiRequest и включает настройки по умолчанию, такие как прием JSON и базовый URL. Класс GoogleBooksApiClient расширяет этот абстрактный класс, указывая базовый URL для API Google Books и обрабатывая авторизацию, специфичную для данного API, например, передачу ключа API в виде параметра запроса.
📚 В статье также представлен пример действия QueryBooksByTitle, которое использует GoogleBooksApiClient для запроса книг по названию из API Google Books.
Post #3860
3.17K
- 👍 5
- ❤ 1
- ⚡ 1
- 🥰 1
- 🌚 1