腾讯云 qcloud/cos-sdk-v5 上传图片怎么获得可以访问的图片地址

$cosClient = new \Qcloud\Cos\Client([
    'region' => 'tj', // 华北-tj | 华南->gz | 华中->sh
    'credentials' => [
        'appId' => env('COS_APPID'),
        'secretId'    => env('COS_SECRETID'),
        'secretKey' => env('COS_SECRETKEY')
    ]
]);
$result = $cosClient->putObject([
    'Bucket'    => 'img-'.env('COS_APPID'), // 存储桶-appid
    'Key'         => $fileName, // 键名==文件名
    'Body'         => fopen($realPath, 'rb'), // 图片
]);

打印
[ETag] => "56b3a7ec5e93351b79a8cbf6770dc08c"
[ServerSideEncryption] => AES256
[RequestId] => NWVkNjNiMWFfMjNiMjM1MGFfNjkyNF9jNGUzZDU=
[Key] => chat_img/20200602/20200602074218-490.jpg
[Bucket] => img-1251411943
[Location] => img-1251411943.cos.ap-beijing-1.myqcloud.com/chat_img/20200602/20200602074218-490.jpg

Location 这个地址不能访问,需要获得 URL 插入数据库 显示图片

welcome come back
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 4

看你这图片返回 You are denied by bucket referer rule ,看看存储桶的规则配置,还有防盗链的设置。

3年前 评论

我个人的做法是用 七牛云配置里的空间域名 拼接上 图片名和后缀. 例如 http://pic.xxx.cn/图片名.jpg. 注意 七牛云的空间 域名 设置. 还有七牛云应该是没有返回空间域名的, 因为 本身自己上传图片时就需要把空间域名带上.这是个人想法和实战经验,不喜勿喷

3年前 评论

Laravel 如果用第三方OSS,你的存储桶默认要是公开的。

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!