pwjbj/client

Alibaba Cloud Client for PHP - 在您的PHP项目中使用阿里云

1.6.0 2020-08-21 12:23 UTC

README

英文 | 简体中文

Alibaba Cloud Client for PHP

Latest Stable Version composer.lock Total Downloads License codecov Travis Build Status Appveyor Build Status

Alibaba Cloud Client for PHP 是一个帮助PHP开发者管理凭证和发送请求的客户端工具,它依赖于此工具的 Alibaba Cloud SDK for PHP

在线演示

API Explorer 提供了在线调用云产品 OpenAPI 的能力,并动态生成 SDK 示例代码和快速检索接口,这可以显著降低使用云 API 的难度。

先决条件

您的系统需要满足 先决条件,包括拥有 PHP >= 5.5。我们强烈建议编译时带有 cURL 扩展和 cURL 7.16.2+。

安装

如果 Composer 已经 在您的系统上全局安装,请在项目基本目录中运行以下命令来安装 Alibaba Cloud Client for PHP 作为依赖项

composer require alibabacloud/client

一些用户可能由于网络问题而无法安装,您可以尝试切换 Composer 镜像。

有关通过 Composer 和其他方式安装 Alibaba Cloud Client for PHP 的更多信息,请参阅 安装

快速示例

在开始之前,您需要注册一个阿里云账户并获取您的 凭证

创建客户端

<?php

use AlibabaCloud\Client\AlibabaCloud;

AlibabaCloud::accessKeyClient('accessKeyId', 'accessKeySecret')->asDefaultClient();

请求

请求样式分为 ROARPC。不同的产品风格不同。请在使用前参考产品文档。建议使用 Alibaba cloud SDK for PHP,其细节已被封装,您无需关心样式。

ROA 请求

<?php

use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;

try {
    $result = AlibabaCloud::roa()
                          ->regionId('cn-hangzhou') // Specify the requested regionId, if not specified, use the client regionId, then default regionId
                          ->product('CS') // Specify product
                          ->version('2015-12-15') // Specify product version
                          ->action('DescribeClusterServices') // Specify product interface
                          ->serviceCode('cs') // Set ServiceCode for addressing, optional
                          ->endpointType('openAPI') // Set type, optional
                          ->method('GET') // Set request method
                          ->host('cs.aliyun.com') // Location Service will not be enabled if the host is specified. For example, service with a Certification type-Bearer Token should be specified
                          ->pathPattern('/clusters/[ClusterId]/services') // Specify path rule with ROA-style
                          ->withClusterId('123456') // Assign values to parameters in the path. Method: with + Parameter
                          ->request(); // Make a request and return to result object. The request is to be placed at the end of the setting
                          
    print_r($result->toArray());
    
} catch (ClientException $exception) {
    print_r($exception->getErrorMessage());
} catch (ServerException $exception) {
    print_r($exception->getErrorMessage());
}

RPC 请求

<?php

use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;

try {
    $result = AlibabaCloud::rpc()
                          ->product('Cdn')
                          ->version('2014-11-11')
                          ->action('DescribeCdnService')
                          ->method('POST')
                          ->request();
    
    print_r($result->toArray());
    
} catch (ClientException $exception) {
    print_r($exception->getErrorMessage());
} catch (ServerException $exception) {
    print_r($exception->getErrorMessage());
}

文档

问题

打开问题,不符合指南的问题可能会立即被关闭。

变更日志

每个版本的详细变更记录在 发布说明 中。

贡献

在提出拉取请求之前,请务必阅读 贡献指南

参考资料

许可证

Apache-2.0

版权所有 (c) 2009-至今,阿里云。保留所有权利。