Saloon es un paquete de Laravel/PHP que te permite escribir integraciones de API con una sintaxis estandarizada y muy elegante.
En el corazón de este paquete están los objetos de solicitud que definen cómo obtener solicitudes específicas de una API.
Ejemplo de Solicitud de API
Por ejemplo, si deseas obtener un servidor de Laravel Forge, podrías definir una clase GetForgeServerRequest como sigue:
use AppHttpSaloonRequestsGetForgeServerRequest;
$request = new GetForgeServerRequest(serverId: '123456');
$request->addHeader('Accept', 'application/json');
$request->addConfig('debug', true);
// Esto sobrescribe todos los encabezados predeterminados.
$request->setHeaders($array);
// Esto sobrescribe todas las opciones de configuración predeterminadas.
$request->setConfig($array);
// Envía la solicitud y obtiene el cuerpo de la respuesta
$response = $request->send();
$data = $response->json();
Clase de Solicitud
Y la clase de solicitud que usarías podría verse algo así:
use AppHttpSaloonConnectorsForgeConnector;
use Sammyjo20SaloonConstantsSaloon;
use Sammyjo20SaloonHttpSaloonRequest;
class GetForgeServerRequest extends SaloonRequest
{
protected ?string $method = Saloon::GET;
protected ?string $connector = ForgeConnector::class;
public function defineEndpoint(): string
{
return '/servers/' . $this->serverId;
}
public function __construct(
public string $serverId
){}
}
Características del Paquete ✨
Saloon te ofrece una manera fluida y orientada a objetos para trabajar con APIs, proporcionando convenciones para organizar mejor tus clases de integración.
Además, este paquete es compatible tanto con Laravel como con cualquier proyecto PHP (PHP 8+) mediante Composer.
Algunas de las características clave de Saloon son:
- Sintaxis sencilla y estandarizada para interactuar con APIs
- No necesitas preocuparte por Guzzle, Http Facade o cURL
- Organización centralizada de todas tus integraciones API
- Posibilidad de agregar funcionalidad personalizada mediante plugins
- Lógica poderosa de interceptores para personalizar las respuestas
- Soporte para Guzzle Handlers y personalización ilimitada
- Mocking de solicitudes para pruebas (próximamente)
- Compatible con cualquier framework
Más Información
Si deseas conocer más sobre Saloon, obtener instrucciones de instalación y ver el código fuente, puedes consultar el repositorio en GitHub.
Artículos Relacionados
Descubre más desde CIBERED
Suscríbete y recibe las últimas entradas en tu correo electrónico.

