karaden-prg / karaden-prg-php
PHP库,用于访问Karaden API。
v1.2.0
2024-03-22 09:10 UTC
Requires
- php: ^7.4 || ^8.0
- ext-json: *
- ext-mbstring: *
- php-http/client-common: ^2.6
- php-http/discovery: ^1.14
- php-http/httplug: ^2.3
- php-http/logger-plugin: ^1.3
- php-http/message-factory: ^1.0
- psr/http-client: ^1.0
- psr/http-message: ^1.0 || ^2.0
- psr/log: ^1.0 || ^2 || ^3
Requires (Dev)
- guzzlehttp/psr7: ^2.4
- php-http/message: ^1.13
- php-http/mock-client: ^1.5
- phpunit/phpunit: ^9.5
README
Karaden PHP库提供了一种简单的方法,从PHP应用程序中访问Karaden API。
由于包含从API响应动态初始化的一连串类定义,因此与Karaden API的广泛版本兼容。
安装方法
如果没有修改包,则不需要此源代码。
如果只想使用包,请执行以下操作。
composer require karaden-prg/karaden-prg-php
运行环境
PHP 7.4~
此库使用HTTPlug库来抽象化HTTP客户端。
根据您的环境,您需要安装HTTPlug的客户端/适配器之一。
例如,如果您使用Guzzle的7.x,则需要执行以下操作。
composer require php-http/guzzle7-adapter
用法
在Karaden中创建租户并生成每个项目可以使用的令牌。
创建的租户ID(租户ID在租户选择界面中显示)分别设置在Config::$tenantId
,生成的令牌分别设置在Config::$apiKey
。
\Karaden\Config::$apiKey = '<トークン>'; \Karaden\Config::$tenantId = '<テナントID>'; $params = \Karaden\Param\Message\MessageCreateParams::newBuilder() ->withServiceId(1) ->withTo('09012345678') ->withBody('本文') ->build(); $message = \Karaden\Model\Message::create($params);
请求特定的设置
如果需要在同一进程中使用多个密钥,可以请求特定地设置密钥或租户ID。
$params = \Karaden\Param\Message\MessageDetailParams::newBuilder() ->withId('<メッセージID>') ->build(); $requestOptions = \Karaden\RequestOptions::newBuilder() ->withApiKey('<トークン>') ->withTenantId('<テナントID>') ->build(); $message = \Karaden\Model\Message::detail($params, $requestOptions);
显式指定HTTP客户端
通常,不需要指定实现了PSR-18接口的HTTP客户端即可找到合适的实现并使用检测到的HTTP客户端,但也可以显式指定。
在需要依赖HTTP客户端的设置(如超时或代理)的用例中使用。
\Karaden\Config::$httpClient = \Http\Adapter\Guzzle7\Client::createWithConfig(['timeout' => <秒>]);
关于超时
由于文件大小或执行环境的通信速度,HTTP通信时可能发生超时。
如果频繁出现此类问题,请调整文件大小或通过显式指定HTTP客户端
增加HTTP客户端的指定及超时时间,然后再次执行。