slacker775 / backblaze-b2-api
用于Backblaze B2 API的PHP库
0.3.0
2023-08-14 16:17 UTC
Requires
- php-http/discovery: ^1.14
- psr/http-client: ^1.0
- psr/http-client-implementation: *
- psr/http-factory: ^1.0
- psr/http-factory-implementation: *
- symfony/property-access: ^4.0|^5.0|^6.0
- symfony/serializer: ^4.0|^5.0|^6.0
Requires (Dev)
- nyholm/psr7: ^1.4
- symfony/http-client: *
- symfony/var-dumper: *
This package is auto-updated.
Last update: 2024-09-14 18:47:34 UTC
README
这个库设计用来允许你插入自己的PSR18兼容的HTTP客户端以利用Backblaze B2 API。最初创建时,它是为了提供一个flysystem适配器的骨架,因此并非所有API调用都已经完成。
用法
<?php
use Backblaze\B2\ApiClient;
$client = new ApiClient($accountId, $apiKey);
foreach($client->listFilenames() as $item) {
printf("File: %s\n", $item->getFileName());
}
客户端构造函数
$client = new ApiClient(private string $applicationKeyId,
private string $applicationKey, ClientInterface $httpClient = null,
RequestFactoryInterface $requestFactory = null,
StreamFactoryInterface $streamFactory = null
)
唯一必需的值是一个应用程序密钥ID(或主ID)和一个应用程序密钥。你可以传入自己的PSR18 HTTP客户端以及自己的请求和流工厂。这允许你在不拖累库的情况下添加插件,如连接日志等。这也防止了这个库与特定的客户端实现绑定,这可能会与使用不同版本的自己的项目发生冲突,从而导致依赖性噩梦。
如果你使用symfony/http-client作为你的实现,你可以传入相同的对象作为$httpClient、$requestFactory和$streamFactory。