Je suis ravi de vous présenter Kong Admin API for PHP, un package PHP puissant et indépendant du framework qui simplifie les interactions avec l'API Admin de Kong Gateway. Ce package est une avancée par rapport à notre précédent client spécifique à Laravel (nasrulhazim/kong-gateway-php-client), qui sera désormais archivé.
Notre nouveau package offre une solution polyvalente aux développeurs dans n'importe quel environnement PHP, offrant la flexibilité nécessaire pour gérer facilement Kong Gateway, quel que soit le framework.
La flexibilité, l'évolutivité et les fonctionnalités de Kong Gateway le rendent idéal pour la gestion des API. Cependant, les clients PHP existants étaient soit liés à des frameworks spécifiques, soit manquaient de flexibilité. Ce nouveau package répond à ces besoins en fournissant :
Vous trouverez ci-dessous un guide pour vous aider à démarrer avec API Kong Admin pour PHP.
Pour installer le package, exécutez :
composer require cleaniquecoders/kong-admin-api
Si vous êtes nouveau sur Kong ou si vous souhaitez le configurer rapidement dans un environnement de développement local, consultez notre guide sur la configuration de Kong Gateway avec Docker. Ce guide fournit une configuration Docker étape par étape pour exécuter Kong localement, idéal pour les tests et le développement.
Tout d'abord, configurez Kong pour autoriser les connexions en boucle sur l'API Admin, permettant ainsi une authentification sécurisée basée sur l'en-tête. Voici un exemple de la façon de le configurer avec curl :
#!/bin/bash # Create Admin API Service curl --request POST --url http://localhost:8001/services --data name=admin-api-service --data url='http://localhost:8001' # Create Admin API Route curl --request POST --url http://localhost:8001/services/admin-api-service/routes --data 'paths[]=/admin-api' --data name=admin-api-route # Enable Key Auth on Admin API Service curl --request POST --url http://localhost:8001/services/admin-api-service/plugins --header 'Content-Type: application/json' --data '{"name":"key-auth","config":{"key_names":["api-key"],"key_in_query":false}}' # Create Admin API Consumer curl --request POST --url http://localhost:8001/consumers --data '{"username":"apim","custom_id":"apim"}' # Create APIM API Key curl -X POST http://localhost:8001/consumers/apim/key-auth
Voici quelques exemples de tâches courantes que vous pouvez effectuer avec ce package :
Initialiser la configuration
use CleaniqueCoders\KongAdminApi\Configuration; $configuration = new Configuration( base: 'http://127.0.0.1:8000', uri: 'admin-api', apiKey: 'your-api-key', keyName: 'api-key' );
Créer un connecteur et un client
use CleaniqueCoders\KongAdminApi\Client; use CleaniqueCoders\KongAdminApi\Connector; $connector = new Connector($configuration); $client = new Client($connector);
Exemples d'opérations
Stocker un nouveau service
use CleaniqueCoders\KongAdminApi\Enums\Endpoint; use CleaniqueCoders\KongAdminApi\Request; $response = $client->send( (new Request) ->setEndPoint(Endpoint::SERVICES) ->store(['name' => 'Some Service', 'url' => 'http://api.service.com']) ); print_r($response);
Mettre à jour un service
$response = $client->send( (new Request) ->setEndPoint(Endpoint::SERVICES) ->update('b3c12a56-1234-4f90-876d-12a5b678abcd', ['url' => 'http://new-example.com']) ); print_r($response);
Obtenir un service
composer require cleaniquecoders/kong-admin-api
Supprimer un service
#!/bin/bash # Create Admin API Service curl --request POST --url http://localhost:8001/services --data name=admin-api-service --data url='http://localhost:8001' # Create Admin API Route curl --request POST --url http://localhost:8001/services/admin-api-service/routes --data 'paths[]=/admin-api' --data name=admin-api-route # Enable Key Auth on Admin API Service curl --request POST --url http://localhost:8001/services/admin-api-service/plugins --header 'Content-Type: application/json' --data '{"name":"key-auth","config":{"key_names":["api-key"],"key_in_query":false}}' # Create Admin API Consumer curl --request POST --url http://localhost:8001/consumers --data '{"username":"apim","custom_id":"apim"}' # Create APIM API Key curl -X POST http://localhost:8001/consumers/apim/key-auth
use CleaniqueCoders\KongAdminApi\Configuration; $configuration = new Configuration( base: 'http://127.0.0.1:8000', uri: 'admin-api', apiKey: 'your-api-key', keyName: 'api-key' );
Vous envisagez d'implémenter Kong comme passerelle API ou avez besoin d'aide pour optimiser votre configuration ? Nous proposons des consultations sur l'installation et la configuration de Kong Gateway pour une gestion transparente des API. Vous pouvez prendre rendez-vous ici : Réserver une consultation.
Kong Admin API for PHP fournit une solution flexible et fiable pour gérer les ressources API de Kong Gateway. Avec la prise en charge de plusieurs frameworks et d'options de configuration robustes, il est conçu pour s'intégrer facilement et donner aux développeurs un contrôle total sur les puissantes fonctionnalités de Kong.
Photo de Codioful (anciennement Gradienta) sur Unsplash
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!