O Alibaba Cloud SDK simplifica o desenvolvimento, permite integrar recursos rapidamente e reduz os custos de O&M. Integre o Alibaba Cloud SDK V1.0 para PHP ao seu projeto para começar a chamar operações de API.
Requisitos de ambiente
PHP >= 5,5
Instale o SDK
A instalação do Alibaba Cloud SDK V1.0 para PHP inclui automaticamente a biblioteca principal. Instale apenas o SDK do produto de nuvem.
SDK do produto de nuvem
O SDK V1.0 de um serviço Alibaba Cloud fornece os objetos de solicitação e resposta das operações de API e o objeto Unmarshaller para serializar valores de retorno. O exemplo a seguir adiciona o ECS V1.0 SDK como dependência:
# ECS V1.0 SDK
composer require alibabacloud/ecs
Os SDKs V1.0 usam o formato de nomenclatura alibabacloud/${product_name}. Você também pode encontrar informações sobre o SDK V1.0 de um produto específico no SDK Center.
SDK principal
A biblioteca principal inclui o objeto cliente, a lógica de assinatura e a lógica de tratamento de erros necessárias para chamar operações de API. Para fazer chamadas genéricas ou instalar uma versão específica da biblioteca principal, execute o comando a seguir:
composer require alibabacloud/client
Para obter mais informações sobre a versão mais recente, consulte alibabacloud/client - Packagist.
Usar o SDK
O exemplo a seguir usa o Alibaba Cloud SDK V1.0 para chamar a operação DescribeInstances do ECS.
1. Inicializar um cliente de solicitação
Todas as operações de API usam o objeto Client da biblioteca principal. Antes de chamar uma operação de API, inicialize um cliente de solicitação. Neste exemplo, o cliente é inicializado com um par de AccessKey. Para obter mais informações, consulte Gerencie credenciais de acesso.
Este exemplo lê credenciais de variáveis de ambiente. Antes de executar o código, configure as variáveis de ambiente ALIBABA_CLOUD_ACCESS_KEY_ID e ALIBABA_CLOUD_ACCESS_KEY_SECRET. Para obter mais informações, consulte Configure variáveis de ambiente no Linux, macOS e 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. Crie um objeto de solicitação
Use o objeto de solicitação fornecido pelo SDK para encapsular os parâmetros da solicitação.
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. Iniciar uma solicitação de API
Chame a função request() para enviar a solicitação.
$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. Tratar erros
Se ocorrer um erro durante a chamada de uma operação de API, capture ServerException e ClientException para obter a mensagem de erro.
Referências
Para configurações avançadas do SDK, como proxy e timeout, consulte Configurações avançadas.
Para criar um par de AccessKey, consulte Crie um par de AccessKey.