bureaupieper / storee-php-client
Store-E REST API客户端
Requires
- php: >=5.5
- guzzlehttp/guzzle: ^6.1
- psr/log: ^1.0
- symfony/config: ~2.7
- symfony/dependency-injection: ~2.7
- tedivm/stash: ^0.13.1
Requires (Dev)
- monolog/monolog: ^1.17
- phpunit/phpunit: ^4
Suggests
- monolog/monolog: ^1.17
README
Store-E 是一个内容(作为服务/存储库)平台,可满足您所有的内容管理需求。内容通过“热点”和“页面”进行交付,您可以根据需要定义。发布的内容包括所有形式的媒体,这些媒体也通过 Store-E 自动化交付和管理。支持多种格式和分辨率的位图(无限制),H.264、MP4、OGV 视频文件,文档,第三方集成,等等。
此客户端可让您在几小时内将您的网站、企业网络或社交媒体平台连接到我们的内容存储库。
此库支持 PSR-3 日志记录,并为 Monolog 提供一些额外功能。缓存由 Stash 处理。HTTP 抽象由 Guzzle 处理。您可以为任何依赖关系提供自己的实现。
安装
独立
$ curl -sS https://getcomposer.org/installer | php
$ composer require bureaupieper/storee-client
$ ./vendor/bin/phpunit
Symfony 用户
查看 BureauPieper/storee-php-client-bundle 以获取简单的集成!
用法
创建配置容器
查看 树形结构 了解所有可能性。容器确保您提供的选择不会冲突。
$config = new Config(['apikey' => '1234', 'platform' => 'yourplatform']);
实例化客户端
$client = new Client($config, \GuzzleHttp\Client $client = null, AbstractDriver $cacheDriver = null, Logger $logger = null);
创建中间请求对象,然后开始。
$req = Client\Request\Factory::create('profile'); $result = $client->request($req);
$req = Client\Request\Factory::create('content/list', [ 'hotspot' => 'my-hotspot' 'page' => 'my-page', ]); $result = $client->request($req);
结果集中的内容项由 ContentResult.php 包装,以简化开发。
HTTP
默认情况下使用一个普通的 GuzzleHttp 实例,有关更多信息请查看 Guzzle。
- getlastRequest 在传递自己的客户端时不起作用,当传递客户端时,请自由添加
Bureaupieper\StoreeClientEffectiveUrlMiddleware
到您自己的处理器堆栈,如下所示
$stack = GuzzleHttp\HandlerStack::create(); $effectiveUrlMiddleware = new Bureaupieper\StoreeClientEffectiveUrlMiddleware(); $stack->push(GuzzleHttp\Middleware::mapRequest($effectiveUrlMiddleware)); $client = new GuzzleHttp\Client([ 'handler' => $stack ]);
缓存
默认启用,使用文件系统驱动程序。如果您需要跨多个节点设置 memcache,请参阅 Stash 以获取广泛的驱动程序选项。
根据“更新时间(ttr)”设置刷新缓存,TTL 不相关。如果端点出现故障,平台仍然可以正常运行。
PSR-3 日志记录
可以启用,如果没有提供实现,则将使用带有两个 RotatingFileHandlers 的 Monolog。INFO 和 ERR 都将保存到 $config['logs']['default_driver']['path']
,但建议传递一个包含一些文件系统处理器的 monolog 实例并自行设置 logrorate。
邮件设置仅适用于默认记录实例。
文档
进行中
联系方式
- piet@store-e.nl(技术)
- info@store-e.nl(询问)