okashoi / laravel5-conoha-object-handler
为 Laravel 5 的 Conoha 对象存储提供的对象处理器。
v1.0
2016-11-30 17:07 UTC
Requires
- guzzlehttp/guzzle: ^6.2
- illuminate/support: ^5.2
Requires (Dev)
- laravel/framework: ^5.2
This package is not auto-updated.
Last update: 2024-09-28 20:55:00 UTC
README
Laravel 5 包用于使用 Conoha 对象存储。
安装
通过 Composer 安装此包。
composer require okashoi/laravel5-conoha-object-handler
要使用此包,请在 config/app.php
中注册服务提供者。
'providers' => [ // ... Okashoi\Laravel5ConohaObjectHandler\ConohaObjectServiceProvider::class, ]
要配置连接设置,请执行以下命令。
php artisan vendor:publish --provider="Okashoi\Laravel5ConohaObjectHandler\ConohaObjectServiceProvider"
然后在 .env
文件中设置以下环境变量。
CONOHA_TENANT_ID
CONOHA_USERNAME
CONOHA_PASSWORD
使用方法
创建实例
首先您必须创建一个 ObjectHandler
实例。
use Okashoi\Laravel5ConohaObjectHandler\ObjectHandler; $handler = new ObjectHandler();
可选地,您可以通过指定缓存键来缓存认证令牌。(建议这样做。默认情况下,每个请求实例都会获取一个新的认证令牌。)
use Okashoi\Laravel5ConohaObjectHandler\ObjectHandler; // cache the auth token with key 'conoha_token' $handler = new ObjectHandler('conoha_token');
缓存是通过使用 Laravel Cache API 实现的。
获取对象列表
示例
$objects = $handler->getList('container_name');
上传对象
示例
$handler->upload('container_name', 'object_name.txt', '/path/to/file/to/upload.txt', 'text/plain');
下载对象
download()
方法将返回 GuzzleHttp 响应。
您可以通过 getBody()
方法访问文件内容。
$response = $handler->download('container_name', 'object_name.txt'); echo $response->getBody();
或者,您可以按如下方式制作下载响应。
$response = $handler->download('container_name', 'object_name.txt'); return reponse($response->getBody())->header('Content-Type', $response->getHeader('Content-Type'));
删除对象
示例
$handler->delete('container_name', 'object_name.txt');