laravel6使用腾讯云对象存储上传文件

先安装扩展包

composer require freyo/flysystem-qcloud-cos-v5
laravel6使用腾讯云对象存储上传文件_第1张图片
successfully

修改配置config/app.php文件

'providers' => [
  // ...
  Freyo\Flysystem\QcloudCOSv5\ServiceProvider::class,
]
laravel6使用腾讯云对象存储上传文件_第2张图片
image.png

修改文件配置filesystems.php

 'cosv5' => [
            'driver' => 'cosv5',
            'region'          => env('COSV5_REGION', 'ap-beijing'),//后面是控制台储存桶里设置的所属地域
            'credentials'     => [
                'appId'     => env('COSV5_APP_ID'),
                'secretId'  => env('COSV5_SECRET_ID'),
                'secretKey' => env('COSV5_SECRET_KEY'),
            ],
            'timeout'         => env('COSV5_TIMEOUT', 60),
            'connect_timeout' => env('COSV5_CONNECT_TIMEOUT', 60),
            'bucket'          => env('COSV5_BUCKET'),
            'cdn'             => env('COSV5_CDN'),
            'scheme'          => env('COSV5_SCHEME', 'https'),
            'read_from_cdn'   => env('COSV5_READ_FROM_CDN', false),
        ],
laravel6使用腾讯云对象存储上传文件_第3张图片
image.png

配置.env文件信息

COSV5_APP_ID= ##APPid
COSV5_SECRET_ID=  ##APP_secret
COSV5_SECRET_KEY=  ## APP_KEY
COSV5_TIMEOUT=60
COSV5_CONNECT_TIMEOUT=60
COSV5_BUCKET= ##存储桶
COSV5_REGION=ap-beijing ##地区
COSV5_CDN= ##访问域名
COSV5_SCHEME=https
COSV5_READ_FROM_CDN=false
laravel6使用腾讯云对象存储上传文件_第4张图片
image.png
laravel6使用腾讯云对象存储上传文件_第5张图片
image.png

使用

路由

        Route::get('/oss','AdminController@oss')->name("admin.oss");//测试
        Route::post('/uposs','AdminController@uposs')->name("admin.uposs");//测试

页面

@csrf

控制器

  public function oss(){
        return view('admin.oss');
    }
    public function uposs(Request $request)
    {
        $file = $request->file('files_url');
        $disk = Storage::disk('cosv5');
        $file_content = $disk -> put('video_class',$file);
        //第一个参数是你储存桶里想要放置文件的路径,第二个参数是文件对象
        $file_url = $disk->url($file_content);//获取到文件的线上地址
        var_dump($file_url);
    }

测试结果

image.png

这里的video_class 和uposs方法,put的路径是一样的,相当于可以创建文件夹


laravel6使用腾讯云对象存储上传文件_第6张图片
image.png
laravel6使用腾讯云对象存储上传文件_第7张图片
image.png

你可能感兴趣的:(laravel6使用腾讯云对象存储上传文件)