aftermarketpl / api
AfterMarket.pl 公共 API 客户端。
Requires
- php: >=5.6
- guzzlehttp/guzzle: *
Requires (Dev)
README
此库允许您从 PHP 调用 AfterMarket.pl 公共 API。
快速开始
使用 composer
安装库。
composer require aftermarketpl/api
创建 API 客户端对象,提供您的 API 密钥。 点击此处获取您的 API 密钥。
$client = new Aftermarketpl\Api\Client(array( "key" => "... your public key ...", "secret" => "... your secret key ...", ));
调用 API 函数并获得结果。 点击此处查看 API 函数列表。
try { $result = $client->send("/domain/check", array( "names" => array("check-1.pl", "check-2.pl"), )); print_r($result); } catch(Aftermarketpl\Api\Exception\Exception $exception) { print_r($exception->getResponse()); }
使用 Guzzle 风格的异步调用
$promise = $client->sendAsync("/domain/check", array( "names" => array("check-1.pl", "check-2.pl"), )); $promise->then( function($result) { print_r($result); }, function($exception) { print_r($exception->$getResponse(); } ); $promise->wait();
安装
您可以通过两种方式安装 API 库。
- 最简单的方法是使用
composer
composer require aftermarketpl/api
- 如果您不使用
composer
,您可以手动安装库。为此,下载并解压文件(只需lib
目录即可),然后在您的 PHP 文件中包含库的自动加载器
require "... path to the lib folder.../autoload.php";
在后一种情况下,如果您不打算使用异步请求,则不需要 Guzzle 库。
- 在这种情况下,库将切换到 plain CURL。
API 密钥
要连接到 API,您需要一个 API 密钥。 点击此处获取您的 API 密钥。
您可以有多个 API 密钥。每个 API 密钥都有一组可以使用该密钥执行的操作。您还可以将密钥的使用限制在特定的 IP 地址集。
创建 API 密钥后,您可以在 Aftermarket.pl 网站上修改其权限、撤回或禁用它。
参考
创建类
要创建一个新的客户端类,使用
$client = new Aftermarketpl\Api\Client($options);
$options
变量是一个数组,可以包含以下值
key
- 用于连接到 API 的公共密钥。secret
- 用于连接到 API 的秘密密钥。debug
- 如果设置为true
,则将使用 CURL_VERBOSE 标志执行到 API 的 CURL 调用,允许您调试连接错误。url
- 连接到 API 时使用的替代 URL。您通常不需要使用此选项。
参数 key
和 secret
对于调用 API 是必需的。然而,您不需要在创建类时指定它们 - 请参阅下文 修改类 部分。
进行 API 调用
$result = $client->send($command, $parameters);
函数 send()
用于将 API 命令发送到服务器。您需要指定两个参数
$command
- 命令名称,例如"/domain/check"
。 点击此处查看 API 函数列表。$parameters
- 包含命令参数的数组。实际内容取决于命令。如果命令不接收任何参数,则可以省略。
返回值是 API 命令返回的数据结构。其内容也取决于实际使用的命令 - 请参阅 API 参考以了解每个命令返回的内容。
异步调用
$promise = $client->sendAsync($command, $parameters); $promise->then(function($response) { ... }, function($exception) { ... }); $response = $promise->wait();
sendAsync()
函数使用 Guzzle 库异步发送 API 调用。输入参数与 send()
函数相同,但返回值是一个承诺,该承诺解析为 API 命令返回的数据结构。
有关如何使用承诺进行异步调用的信息,请参阅 Guzzle 文档。
异常
如果出现错误,将抛出 Aftermarketpl\Api\Exception\Exception
的子类。该类扩展了标准的 Exception
类,并包含 getResponse()
方法,该方法返回从服务器接收到的响应内容。当然,该值仅在已实际调用服务器时有效;如果错误发生在那之前,则该值为 null
。
修改类
您可以使用以下函数在运行时修改创建的客户端类:
$client->setAuth($key, $secret);` $client->getAuthKey(); $client->getAuthSecret(); $client->setDebug($debug); $client->getDebug(); $client->setUrl($url); $client->getUrl();