使用阿里云OSS上传文件

本文介绍利用Java API操作阿里云OSS对象存储的方法。先介绍了阿里云OSS对象存储的基本概念,如Bucket和AccessKey,接着说明了API的使用,包括地址、使用准备、构建实例,还详细讲解了上传文件的两种常用方式,最后指出OSS操作还有更多玩法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  本文介绍如何利用Java API操作阿里云OSS对象存储。

  1.控制台操作

  首先介绍一下阿里云OSS对象存储的一些基本概念。

  1.1 进入对象存储界面

  登录阿里云账号,进入对象存储界面,如图所示。

  


  进入后如图所示。

  


  1.2 OSS基本概念

  这里不过多介绍如何在阿里云上传下载文件,这些操作基本上点一点都能找到。

  1.2.1 Bucket

  Bucket实质就是阿里云OSS对象存储的一个存储空间,按照计算机理解的话可以理解为一个磁盘(不知道这样比喻是否恰当)。

  创建桶的过程很简单,如图所示,填写对应内容即可。

  


  这里需要注意,不同分区的Endpoint是不同的,Endpoint在后续API使用过程中会用到。至于存储类型和读写权限相关设置,都结合自身情况来使用,这里以标准存储和私有权限为例进行介绍。

  1.2.2 AccessKey

  AccessKey是访问阿里云API的秘钥,这里也需要提前创建一份,创建后我们需要记住自己的AccessKey ID和Access Key Secret,如果忘记可以在如图位置查询。

  


  2 API使用

  2.1 API地址

  一般使用对象存储无非就是上传和下载文件,完整API地址如下:

  https://help.aliyun.com/document_detail/32015.html?spm=5176.8466032.bucket-object.1.33ac1450TuX65y

  2.2 API使用准备

  Java使用很简单,直接在Maven中引用依赖,如下:

  


  2.3 构建OSSClient实例

  这里就需要用到我们上面提到的endpoint和AccessKey,构建实例内容如下所示。

  


  2.4 上传文件

  上传文件常用的方式大致为两种,一种是返回可以查看文件的地址,另外一种是通过地址可以直接下载文件。

  2.4.1 上传文件,返回可以预览图片的地址

  上传文件有一些需要注意的地方:

  1.文件名不要重复,不然会覆盖。

  2.建议将不同日期的文件分别创建一个文件夹方便区分。这里先以上传本地桌面的一个图片为例,上传后在Bucket内自动创建日期格式yyyyMMdd的文件夹存放文件,文件名按照当前时间戳加随机数的形式拼接,由于返回的URL是带有签名信息的,所以这里暂时设置过期时间为一小时,如果需要可以将时间加长。

  完整内容如下所示:

  


  


  返回地址格式如下:

  http://dalaoyang-test.oss-cn-beijing.aliyuncs.com/20190518/1558155342968407.jpeg?Expires=1558158948OSSAccessKeyId=LTAIRr3alAhROGTASignature=%2BIjVpD%2BTWrRmSt4kU7axo6Cnqbw%3D

  浏览器访问如图所示:

  


  在阿里云OSS中查看如图所示,可以看到文件夹也对应的创建了。

  


  2.4.2 上传文件,返回可以直接下载图片的地址

  这个和上面其实类似,如果需要返回可以直接下载的地址的话,只要设置一下文件的contentDisposition为attachment;即可,完整内容如下:

  


  


  这次返回的地址在浏览器访问直接下载下来了文件。

  3 小结

  对于阿里云OSS操作还是有很多玩法的,比如上传下载带进度条,分段上传等等,需要的话可以根据场景去玩。


转载于:https://juejin.im/post/5ce2537a6fb9a07eed34d120

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值