Le SDK Alibaba Cloud simplifie le développement, accélère l'intégration des fonctionnalités et réduit les coûts d'exploitation et de maintenance. Intégrez le SDK Alibaba Cloud V1.0 pour PHP à votre projet pour commencer à appeler des opérations d'API.
Configuration requise
PHP >= 5,5
Installation du SDK
L'installation du SDK Alibaba Cloud V1.0 pour PHP inclut automatiquement la bibliothèque principale. Vous devez uniquement installer le SDK du produit cloud concerné.
SDK du produit cloud
Le SDK V1.0 d'un service Alibaba Cloud fournit les objets de requête et de réponse des opérations d'API, ainsi que l'objet Unmarshaller pour sérialiser les valeurs de retour. L'exemple suivant ajoute le SDK ECS V1.0 comme dépendance :
# ECS V1.0 SDK
composer require alibabacloud/ecs
Les SDK V1.0 suivent la convention de nommage alibabacloud/${product_name}. Consultez également le SDK Center pour obtenir des informations sur le SDK V1.0 d'un produit spécifique.
SDK principal
La bibliothèque principale contient l'objet client, la logique de signature et la gestion des erreurs nécessaires aux appels d'API. Pour réaliser des appels génériques ou installer une version spécifique de cette bibliothèque, exécutez la commande suivante :
composer require alibabacloud/client
Pour plus d'informations sur la dernière version, consultez alibabacloud/client - Packagist.
Utilisation du SDK
L'exemple ci-dessous utilise le SDK Alibaba Cloud V1.0 pour appeler l'opération ECS DescribeInstances.
1. Initialiser un client de requête
Toutes les opérations d'API s'effectuent via l'objet Client de la bibliothèque principale. Avant tout appel d'API, initialisez un client de requête. Cet exemple utilise une paire d'AccessKey pour l'initialisation. Pour plus d'informations, consultez Manage access credentials.
Cet exemple lit les identifiants depuis les variables d'environnement. Avant d'exécuter le code, configurez les variables d'environnement ALIBABA_CLOUD_ACCESS_KEY_ID et ALIBABA_CLOUD_ACCESS_KEY_SECRET. Pour plus d'informations, consultez Configure environment variables on Linux, macOS, and Windows.
use AlibabaCloud\Client\AlibabaCloud;
// Please ensure that the environment variables ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET are set.
AlibabaCloud::accessKeyClient(getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'), getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'))
->regionId('<REGION_ID>')
->asDefaultClient();
2. Créer un objet de requête
Utilisez l'objet de requête fourni par le SDK pour encapsuler les paramètres.
use AlibabaCloud\Ecs\Ecs;
// Build the request parameters.
$request = Ecs::v20140526()
->describeInstances() // Create a request object for the API operation.
->withInstanceIds(json_encode(["i-bp1dXXXXXXXXXXXX"])) // The InstanceIds request parameter. Specify the ID of your instance.
->withPageSize(10) // The PageSize request parameter. Specify the number of entries that you want to obtain.
->withPageNumber(1); // The PageNumber request parameter. Specify the number of the page that you want to obtain.
3. Envoyer une requête API
Appelez la fonction request() pour envoyer la requête.
$result = $request
->debug(true) // Output details. If this field is set to false, details are not output.
->request(); // Execute the request.
print_r($result->toArray()); // Print the response to the API request.
4. Gérer les erreurs
Si une erreur survient lors d'un appel d'API, capturez les exceptions ServerException et ClientException pour obtenir le message d'erreur.
Références
Pour les paramètres avancés du SDK (configuration du proxy, délais d'expiration), consultez Advanced settings.
Pour créer une paire d'AccessKey, consultez Create an AccessKey pair.