meema/flysystem-meema

Meema API 的 Flysystem 适配器


README

Meema for Laravel

Meema 与您的 PHP/Laravel 项目集成的最简单方法

Scrutinizer Total Downloads Latest Version License

文档PHP 客户端报告错误常见问题解答Discord

🐙 安装

此包包含一个 Meema 的 Flysystem 适配器。

您可以通过 composer 安装此包

composer require meema/flysystem-meema

💡 使用方法

您需要首先在 Meema.io 获取一个 API 密钥。登录后,您可以在 Meema 的 仪表板 中轻松生成 API 密钥。有关更详细的分步说明,请参阅我们的文档 此处

use League\Flysystem\Filesystem;
use Meema\Client;
use Meema\FlysystemMeema\MeemaAdapter;

$client = new Client($authorizationToken);

$adapter = new MeemaAdapter($client);

$filesystem = new Filesystem($adapter);

为了扩展存储,您只需将以下内容放入服务提供者的 boot 方法中

use League\Flysystem\Filesystem;
use Meema\Client as MeemaClient;
use Meema\FlysystemMeema\MeemaAdapter;

/**
 * Bootstrap any application services.
 *
 * @return void
 */
public function boot()
{
    Storage::extend('meema', function ($app, $config) {
        $client = new MeemaClient(
            $config['api_secret']
        );

        return new Filesystem(new MeemaAdapter($client));
    });
}

扩展存储后,您可以在 .env 文件或文件系统的配置文件中将 meema 设置为文件系统驱动程序。

FILESYSTEM_DRIVER=meema
'disks' => [
    // ...
    'meema' => [
        'driver' => 'meema',
        'api_secret' => env('MEEMA_API_SECRET'),
    ],
]

有关自定义文件系统的更多信息,请参阅 此处

扩展并定义文件系统驱动程序后,您可以使用 Laravel 的 "Storage" 门面如下

use Illuminate\Support\Facades\Storage;

$storage = Storage::disk('meema');

$storage->put('photos/image.jpg', $file);
$storage->getMetadata('photos/image.jpg');
$storage->getVisibility('photos/image.jpg');
$storage->setVisibility('photos/image.jpg', 'private');
$storage->path('photos/image.jpg');
$storage->copy('photos/image.jpg', 'photos/copied-image.jpg');
$storage->rename('photos/image.jpg', 'photos/renamed-image.jpg');

🧪 测试

composer test

📈 更新日志

请参阅我们的 发布 页面,以了解最近有哪些变化。

💪🏼 贡献

有关详细信息,请参阅 CONTRIBUTING

🏝 社区

如需帮助、讨论最佳实践或任何其他可搜索的对话

Flysystem Meema 在 GitHub 上

与其他使用此包的人闲聊

加入 Meema Discord 服务器

🚨 安全

请参阅我们如何报告安全漏洞的 安全策略

🙏🏼 致谢

📄 许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 LICENSE

由 Meema, Inc. 用 ❤️ 制作