如何在 Laravel 中使用阿里云 OSS

原文发表在我的个人网站:如何在 Laravel 中使用阿里云 OSS

阿里云提供了基于命名空间的 V2 版 SDK,但是文档不是很完整,使用门槛比较高,于是我封装了一个 Composer 包:https://github.com/johnlui/AliyunOSS

安装

将以下内容增加到 composer.json:

require: {
    "johnlui/aliyun-oss": "dev-master"
}

然后运行 composer update

使用

use JohnLui\AliyunOSS\AliyunOSS;

// 构建 OSSClient 对象
// 三个参数:服务器地址、阿里云提供的AccessKeyId、AccessKeySecret
$oss = AliyunOSS::boot('http://oss-cn-qingdao.aliyuncs.com',  $AccessKeyId, $AccessKeySecret);

// 设置 Bucket
$oss = $oss->setBucket($bucketName);

// 上传一个文件(示例文件为 public 目录下的 robots.txt)
// 两个参数:资源名称、文件路径
$oss->uploadFile('robots.txt', public_path('robots.txt'));

// 从服务器获取这个资源的 URL 并打印
// 两个参数:资源名称、过期时间
echo $oss->getUrl('robots.txt', new DateTime("+1 day"));

就是这么简单,喜欢可以去 Github上 Star 哦!

吕文翰
本帖已被设为精华帖!
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 11
Summer

@baocaixiong 刚刚发现, Emoji 和前面的字, 或者后面的字需要有一个空格 (至少一个), 如: :sheep: :sheep: , 否则的话就会变成::sheep::sheep: , 不是什么大问题啦.

9年前 评论

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