华为云OBS配合laravel文件上传解决composer安装时候与框架依赖冲突问题

华为云OBS配合laravel文件上传解决composer安装时候与框架依赖冲突问题

Tp5框架测试也是适用的

1.在vendor目录下新建obs文件夹 结构如下图 sdk下载地址
链接: php sdk链接.
在这里插入图片描述
2.在public目里下index.php文件中加入以下代码

require __DIR__.'/../vendor/obs/vendor/autoload.php';
require __DIR__.'/../vendor/obs/obs-autoloader.php';
use Obs\ObsClient;
use Obs\ObsException;

3.在上传文件控制器UploadController中加入以下代码

use Obs\ObsClient;  //头部加入这段代码
/**
 * 上传图片
 * @param Request $request
 * @return \Symfony\Component\HttpFoundation\Response
 */
public function uploadImage(Request $request)
{

    $localfile = $request->file()['image']->getPathname();
    // 创建ObsClient实例
    $obsClient = new ObsClient([
        'key' => 'PRMKOZAQCQTQPL39U5CGN',
        'secret' => 'q5O6k88LUPnAQbBNIXykkjOEP3UM3VjlqE1ztrzm',
        'endpoint' => 'obs.cn-east-3.myhuawicl3oud.com',
    ]);
    $resp = $obsClient->putObject([
        'Bucket' => 'cmsobs20200713',
        'Key' => date("Y-m-d H:i:s").".png",
        'SourceFile' => $localfile  // localfile为待上传的本地文件路径,需要指定到具体的文件名
    ]);

    $response['code'] = 0;
    $response['msg'] = "图片上传成功!";
    $response['file_path'] = $resp['ObjectURL'];
    echo json_encode($response);
    exit;
}