Guzzle es un cliente PHP HTTP que facilita el envío de solicitudes HTTP y facilita la integración con servicios web.
Interfaz simple para crear cadenas de consulta, solicitudes POST, transmitir cargas grandes, transmitir descargas grandes, usar cookies HTTP, cargar datos JSON, etc.
Puede enviar solicitudes tanto síncronas como asíncronas utilizando la misma interfaz.
Utiliza interfaces PSR-7 para solicitudes, respuestas y transmisiones. Esto le permite utilizar otras bibliotecas compatibles con PSR-7 con Guzzle.
Admite PSR-18, lo que permite la interoperabilidad entre otros clientes HTTP PSR-18.
Elimina el transporte HTTP subyacente, lo que le permite escribir código independiente del entorno y del transporte; es decir, no hay dependencia estricta de cURL, flujos PHP, sockets o bucles de eventos sin bloqueo.
El sistema middleware le permite aumentar y componer el comportamiento del cliente.
$cliente = new GuzzleHttpClient();$respuesta = $cliente->request('GET', 'https://api.github.com/repos/guzzle/guzzle');echo $respuesta->getStatusCode(); // 200echo $respuesta->getHeaderLine('tipo-contenido'); // 'aplicación/json; charset=utf8'echo $respuesta->getBody(); // '{"id": 1420053, "name": "guzzle", ...}'// Enviar una solicitud asincrónica.$request = new GuzzleHttpPsr7Request('GET', 'http://httpbin.org') ;$promesa = $cliente->sendAsync($solicitud)->entonces(función ($respuesta) {echo '¡Completé! ' . $respuesta->getBody(); });$promesa->espera();
Usamos los problemas de GitHub solo para discutir errores y nuevas funciones. Para obtener soporte, consulte:
Documentación
Desbordamiento de pila
Canal #guzzle en PHP-HTTP Slack
gitter
La forma recomendada de instalar Guzzle es a través de Composer.
el compositor requiere guzzlehttp/guzzle
Versión | Estado | empaquetador | Espacio de nombres | repositorio | Documentos | PSR-7 | Versión PHP |
---|---|---|---|---|---|---|---|
3.x | Fin de vida (31 de octubre de 2016) | guzzle/guzzle | Guzzle | v3 | v3 | No | >=5.3.3,<7.0 |
4.x | Fin de vida (31 de octubre de 2016) | guzzlehttp/guzzle | GuzzleHttp | v4 | N / A | No | >=5,4,<7,0 |
5.x | Fin de vida (2019-10-31) | guzzlehttp/guzzle | GuzzleHttp | v5 | v5 | No | >=5,4,<7,4 |
6.x | Fin de vida (2023-10-31) | guzzlehttp/guzzle | GuzzleHttp | v6 | v6 | Sí | >=5,5,<8,0 |
7.x | El último | guzzlehttp/guzzle | GuzzleHttp | v7 | v7 | Sí | >=7.2.5,<8.5 |
Si descubre una vulnerabilidad de seguridad dentro de este paquete, envíe un correo electrónico a [email protected]. Todas las vulnerabilidades de seguridad se abordarán de inmediato. No reveles públicamente los problemas relacionados con la seguridad hasta que se haya anunciado una solución. Consulte la Política de seguridad para obtener más información.
Guzzle está disponible bajo la licencia MIT (MIT). Consulte el archivo de licencia para obtener más información.
Disponible como parte de la suscripción Tidelift
Los mantenedores de Guzzle y miles de otros paquetes están trabajando con Tidelift para brindar soporte comercial y mantenimiento para las dependencias de código abierto que utiliza para crear sus aplicaciones. Ahorre tiempo, reduzca el riesgo y mejore la salud del código, mientras paga a los mantenedores de las dependencias exactas que utiliza. Obtenga más información.