nikitaksv / apidq-client-php
ApiDQ API的PHP客户端
v1.0.0
2021-09-26 13:15 UTC
Requires
- php: >=7.4.0
- ext-json: *
- doctrine/annotations: ^1.8
- league/uri: ^6.5
- php-http/cache-plugin: ^1.7
- php-http/client-common: ^2.4.0
- php-http/discovery: ^1.14.1
- php-http/logger-plugin: ^1.2
- php-http/message: ^1.12.0
- php-http/message-factory: ^v1.0.2
- psr/cache: ^1.0 || ^2.0 || ^3.0
- symfony/cache: >=v3.1.0
- symfony/property-access: ^v5.3
- symfony/property-info: ^5.3
- symfony/serializer: ^5.3
Requires (Dev)
- neur0toxine/pock: ^0.10
- php-http/curl-client: ^2.2
- phpmd/phpmd: ^2.10
- phpstan/phpstan: ^0.12.99
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.6
- vlucas/phpdotenv: ^5.3
Suggests
- ext-curl: Most HTTP clients need ext-curl to work properly.
- php-http/client-implementation: PSR-18 compatible client should be available to use this library.
- php-http/curl-client: Simplest PSR-18 client implementation.
- symfony/http-client: One of the most popular HTTP clients. Has PSR-18 compatible adapter.
README
这是PHP ApiDQ API客户端。此库允许使用实际API版本。您可以在文档中找到更多信息。
安装
按照以下步骤安装库
- 下载并安装Composer包管理器。
- 通过执行以下命令从Packagist安装库
composer require nikitaksv/apidq-client-php:"~1.0"
注意:API客户端使用php-http/client-implementation
作为PSR-18、PSR-17实现。您可以在安装期间替换这些实现,通过安装选择实现库,例如:
composer require symfony/http-client guzzlehttp/psr7 nikitaksv/apidq-client-php:"~1.0"
使用方法
首先,您应该初始化客户端。最简单的方法是使用SimpleClientFactory
。
$client = \ApiDQ\Factory\SimpleClientFactory::createClient('https://api.apidq.io', 'apiKey'); $client = \ApiDQ\Factory\SimpleClientFactory::createClientWithCache('https://api.apidq.io', 'apiKey', $psrCache); $client = \ApiDQ\Factory\SimpleClientFactory::createClientWithFileCache('https://api.apidq.io', 'apiKey', sys_get_temp_dir());
客户端分为几个资源组,所有这些组都可以通过客户端的公共属性访问。您可以像这样调用API方法:
$cleanResponse = $client->address->clean( (new \ApiDQ\Model\Service\Address\CleanRequest()) ->setQuery('Москва') ->setCountryCode('RU') );
要处理错误,您必须使用两种类型的异常
ApiDQ\Exception\Service\ServiceException
用于API服务错误。ApiDQ\Exception\Client\BuilderException
用于客户端构建错误。