我已经通过在我的Laravel 8
项目中运行以下composer命令安装了s3 flystem包
composer require --with-all-dependencies league/flysystem-aws-s3-v3 "^1.0"
并尝试将请求中的文件存储为
$imageName = $request->file('file')->store('uploads');
我得到以下错误
League\Flysystem\AwsS3v3\AwsS3Adapter::__construct():参数#1($客户端)必须是类型Aws\S3Client,Aws\S3\S3Client给定,调用在D:\Projects\Rescale\vendor\laravel\framework\src\Illuminate\Filesystem\FilesystemManager.php行229
3条答案
按热度按时间vlju58qv1#
所以看起来ThePHPLeague Flysystem主要版本更新了(到v2),因此打破了很多东西,因为最新的Laravel依赖于“^1.1”(参见:https://github.com/laravel/framework/blob/8.x/composer.json#L27).
我遇到过这个错误,所以我的解决方法是使用特定的版本。
1.转到composer.json并使用latest v1(请参阅:https://github.com/thephpleague/flysystem-aws-s3-v3/tags)。
1.运行
composer update
并让composer更新您的依赖项。imzjd6km2#
试试这个
composer require --with-all-dependencies league/flysystem-aws-s3-v3 "~1.0"
7rfyedvj3#
我在Laravel版本8中遇到了同样的错误
1.打开
composer.json
并将内部版本更改为"league/flysystem-aws-s3-v3": "^1.0"
1.运行
composer update