Guzzle — это HTTP-клиент PHP, который упрощает отправку HTTP-запросов и упрощает интеграцию с веб-сервисами.
Простой интерфейс для создания строк запросов, запросов POST, потоковой передачи больших загрузок, потоковой передачи больших загрузок, использования файлов cookie HTTP, загрузки данных JSON и т. д.
Может отправлять как синхронные, так и асинхронные запросы, используя один и тот же интерфейс.
Использует интерфейсы PSR-7 для запросов, ответов и потоков. Это позволяет вам использовать другие библиотеки, совместимые с PSR-7, с Guzzle.
Поддерживает PSR-18, обеспечивая взаимодействие между другими HTTP-клиентами PSR-18.
Абстрагирует базовый HTTP-транспорт, позволяя писать код, независимый от среды и транспорта; т.е. нет жесткой зависимости от cURL, потоков PHP, сокетов или неблокирующих циклов событий.
Система промежуточного программного обеспечения позволяет дополнять и формировать поведение клиента.
$client = новый GuzzleHttpClient();$response = $client->request('GET', 'https://api.github.com/repos/guzzle/guzzle');echo $response->getStatusCode(); // 200echo $response->getHeaderLine('content-type'); // 'приложение/json; charset=utf8'echo $response->getBody(); // '{"id": 1420053, "name": "guzzle", ...}'// Отправляем асинхронный запрос. $request = new GuzzleHttpPsr7Request('GET', 'http://httpbin.org') ;$promise = $client->sendAsync($request)->then(function ($response) {echo 'Я завершил!' . $response->getBody(); });$promise->wait();
Мы используем выпуски GitHub только для обсуждения ошибок и новых функций. Для поддержки, пожалуйста, обратитесь к:
Документация
Переполнение стека
Канал #guzzle на PHP-HTTP Slack
Гиттер
Рекомендуемый способ установки Guzzle — через Composer.
композитору требуется guzzlehttp/guzzle
Версия | Статус | Упаковщик | Пространство имен | Репо | Документы | ПСР-7 | PHP-версия |
---|---|---|---|---|---|---|---|
3.х | Конец (31 октября 2016 г.) | guzzle/guzzle | Guzzle | v3 | v3 | Нет | >=5.3.3,<7.0 |
4.х | Конец (31 октября 2016 г.) | guzzlehttp/guzzle | GuzzleHttp | v4 | Н/Д | Нет | >=5,4,<7,0 |
5.х | Окончание (31 октября 2019 г.) | guzzlehttp/guzzle | GuzzleHttp | v5 | v5 | Нет | >=5,4,<7,4 |
6.х | Окончание (31 октября 2023 г.) | guzzlehttp/guzzle | GuzzleHttp | v6 | v6 | Да | >=5,5,<8,0 |
7.х | Последний | guzzlehttp/guzzle | GuzzleHttp | v7 | v7 | Да | >=7.2.5,<8,5 |
Если вы обнаружите уязвимость безопасности в этом пакете, отправьте электронное письмо по адресу [email protected]. Все уязвимости безопасности будут оперативно устранены. Пожалуйста, не сообщайте публично о проблемах, связанных с безопасностью, пока не будет объявлено об исправлении. Пожалуйста, ознакомьтесь с Политикой безопасности для получения дополнительной информации.
Guzzle доступен по лицензии MIT (MIT). Дополнительную информацию см. в файле лицензии.
Доступно как часть подписки Tidelift.
Разработчики Guzzle и тысяч других пакетов работают с Tidelift, чтобы обеспечить коммерческую поддержку и обслуживание зависимостей с открытым исходным кодом, которые вы используете для создания своих приложений. Экономьте время, снижайте риски и улучшайте работоспособность кода, платя при этом специалистам по сопровождению именно тех зависимостей, которые вы используете. Узнать больше.