mwebdev / backblaze-b2
Laravel Backblaze B2 存储服务提供者提供了将 Blackblaze 作为存储系统的 Laravel 存储支持。
README
backblaze-b2 是用于与 Backblaze 的 B2 存储服务交互的 SDK。
通过 Composer 安装
$ composer require mwebdev/backblaze-b2
使用 use BackblazeB2\Client; use BackblazeB2\Bucket;
$options = ['auth_timeout_seconds' => seconds];
$client = new Client('accountId', 'applicationKey', $options); $options 是可选的。如果省略,默认超时为 12 小时。超时允许长时间存在的 Client 对象,以便授权令牌不会过期。
ApplicationKey 尚不支持,请仅使用 MasterKey 返回存储桶详细信息 $bucket = $client->createBucket([ 'BucketName' => 'my-special-bucket', 'BucketType' => Bucket::TYPE_PRIVATE // 或 TYPE_PUBLIC ]); 更改存储桶类型 $updatedBucket = $client->updateBucket([ 'BucketId' => $bucket->getId(), 'BucketType' => Bucket::TYPE_PUBLIC ]); 列出所有存储桶 $buckets = $client->listBuckets(); 删除存储桶 $client->deleteBucket([ 'BucketId' => 'YOUR_BUCKET_ID' ]); 文件上传 $file = $client->upload([ 'BucketName' => 'my-special-bucket', 'FileName' => 'path/to/upload/to', 'Body' => 'I am the file content'
// The file content can also be provided via a resource.
// 'Body' => fopen('/path/to/input', 'r')
]); 文件下载 $fileContent = $client->download([ 'FileId' => $file->getId()
// Can also identify the file via bucket and path:
// 'BucketName' => 'my-special-bucket',
// 'FileName' => 'path/to/file'
// Can also save directly to a location on disk. This will cause download() to not return file content.
// 'SaveAs' => '/path/to/save/location'
]); 文件复制 $copyOfFile = $client->copy([ 'BucketName' => $bucketName, 'FileName' => $path, 'SaveAs' => $newPath,
// Can also supply BucketId instead of BucketName
// Optional are DestinationBucketName or DestinationBucketId
]); 文件删除 $fileDelete = $client->deleteFile([ 'FileId' => $file->getId()
// Can also identify the file via bucket and path:
// 'BucketName' => 'my-special-bucket',
// 'FileName' => 'path/to/file'
]); 列出所有文件 $fileList = $client->listFiles([ 'BucketId' => 'YOUR_BUCKET_ID' ]); 更新日志请参阅 CHANGELOG 获取更多最近更改的信息。
测试 $ vendor/bin/phpunit 贡献者请参阅 CONTRIBUTING 和 CONDUCT 获取详细信息。
安全性如果您发现任何与安全相关的问题,请通过电子邮件 atonujekemena@gmail.com 联系,而不是使用问题跟踪器。
鸣谢所有贡献者 许可证 MIT 许可证 (MIT)。有关更多信息,请参阅许可文件。
Laravel 使用
安装
通过 Composer
composer require mwebdev/backblaze-b2
在 app.php 配置文件中将服务提供者添加到列表中
\Gliterd\BackblazeB2\BackblazeB2ServiceProvider::class,
在 filesystems.php 配置文件中的 disks 部分添加以下内容
'b2' => [ 'driver' => 'b2', 'accountId' => '', 'applicationKey' => '', 'bucketName' => '', ],
使用
就像您通常使用 Storage 门面一样使用它。
\Storage::disk('b2')->put('filename.txt', 'My important content');
和
\Storage::disk('b2')->get('filename.txt')