我已经通过在我的目录中运行以下 Composer 命令安装了 s3 Flysystem 软件包Laravel 8
project
composer require --with-all-dependencies league/flysystem-aws-s3-v3 "^1.0"
并尝试将请求中的文件存储为
$imageName = $request->file('file')->store('uploads');
我收到以下错误
League\Flysystem\AwsS3v3\AwsS3Adapter::__construct():参数 #1
($client) 必须是 Aws\S3Client 类型,给定 Aws\S3\S3Client,称为
在
D:\Projects\Rescale\vendor\laravel\framework\src\Illuminate\Filesystem\FilesystemManager.php
229号线
所以看来 ThePHPLeague Flysystem 主要版本已更新(到 v2),因此破坏了很多东西,因为最新的 Laravel 依赖于“^1.1”(请参阅:https://github.com/laravel/framework/blob/8.x/composer.json#L27).
我遇到了这个错误,所以我的解决方法是使用特定版本。
- 转到composer.json并使用最新的v1(请参阅:https://github.com/thephpleague/flysystem-aws-s3-v3/tags).
- "league/flysystem-aws-s3-v3": "^1.0",
+ "league/flysystem-aws-s3-v3": "1.0.29",
- Run
composer update
并让 Composer 更新您的依赖项。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)