AfterMarket.pl 公共 API 客户端。

v0.6.2 2018-12-12 20:04 UTC

This package is auto-updated.

Last update: 2024-09-13 10:52:51 UTC


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 库。

  1. 最简单的方法是使用 composer
composer require aftermarketpl/api
  1. 如果您不使用 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。您通常不需要使用此选项。

参数 keysecret 对于调用 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();