一、快速使用

1、注册账号并实名验证

2、搜索找到对象存储OSS,开通OSS服务

3、查看官方文档


二、具体使用

1、 注册阿里云账号和实名认证

(1)网址:https://www.aliyun.com/

(2)可以使用支付宝注册,现在还提供了钉钉注册方式

(3)注册成功后需要实名认证才能开通“对象存储OSS”服务

2、开通“对象存储OSS”服务

直接搜索找到【对象存储OSS】,开通OSS服务

3、控制台的使用

(1)开通服务后,进入控制台

(2)手动创建bucket

1)通过【创建Bucket】进行新建

bucket名称:自定义;

地域:系统会自动选择最优的,默认即可;

同城冗余存储:关闭,选择启动是要收费的;

读写权限:根据需要来选择;这里会为了后续讲解,会选择“公共读”

如果只是学习,基本上都默认即可

2)点击确定,这样我们就手动创建好了一个bucket

3)这时,我们可以试着上传文件了,阿里云是提供了两种访问方式,一种是后台管理系统,一种是API

当然,在日常的开发中,是使用api的,因为你不可能叫用户打开阿里云去上传文件

3)如果想删除bucket

(3)权限的设置

1)因为我们前面创建选择的读写权限是“公共读”,所以后续我们是需要设置AccessKey的

2)进入AccessKey 管理

3)在使用AccessKey时,我们通常的做法是创建子用户key,不同的服务开通不同的子key,这样会更安全

4)开通子用户AccessKey

①做编程的要勾上Open API...

②验证

③创建子用户成功

注意:这时我们最后把key账号和密钥复制下来,找个地方存好备用,因为后面会直接给你隐藏掉了

或者直接下载下来也可以

④最后为用户添加权限

如果没有添加权限,后面开发时,就会经常报错“没有权限”

如果是平时的简单使用,到这里就可以了,如果需要做开发的,下面才是重要的。

4、查阅阿里云API(最核心)

做开发的怎么能离开开发文档呢

(1)进入oss学习路径

(2)根据自己的开发语言选择SDK

因为我是写Java的,所以用Java SDK

(3)Java SDK概要

从Java SDK进来后,可以看到里面有着方方面面的介绍

5、一个简单的示例(Java创建bucket)

以下都可以通过查阅官方文档实现

(1)检查自己的jdk版本,要求是1.7及以上版本

(2)创建一个Maven项目

(2)安装sdk

这里是使用的是Maven项目,所以直接安装依赖即可

    <dependencies><!--aliyunOSS--><dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.10.2</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version></dependency></dependencies>

然后等待下载好依赖,即可做一些简单的操作

(3)Java创建bucket

①查阅官方文档-创建存储空间

②复制示例代码,然后根据之前保存的我们自己的AccessKey来修改即可,具体如下:

主要修改这几个即可
String endpoint
String accessKeyId
String accessKeySecret
String bucketName 
import com.aliyun.oss.ClientException;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.OSSException;
import com.aliyun.oss.model.CreateBucketRequest;public class Demo {public static void main(String[] args) throws Exception {// Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";// 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。String accessKeyId = "yourAccessKeyId";String accessKeySecret = "yourAccessKeySecret";// 填写Bucket名称,例如examplebucket。String bucketName = "examplebucket";// 创建OSSClient实例。OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);try {// 创建CreateBucketRequest对象。CreateBucketRequest createBucketRequest = new CreateBucketRequest(bucketName);// 如果创建存储空间的同时需要指定存储类型和数据容灾类型, 请参考如下代码。// 此处以设置存储空间的存储类型为标准存储为例介绍。//createBucketRequest.setStorageClass(StorageClass.Standard);// 数据容灾类型默认为本地冗余存储,即DataRedundancyType.LRS。如果需要设置数据容灾类型为同城冗余存储,请设置为DataRedundancyType.ZRS。//createBucketRequest.setDataRedundancyType(DataRedundancyType.ZRS);// 设置存储空间的权限为公共读,默认为私有。//createBucketRequest.setCannedACL(CannedAccessControlList.PublicRead);// 创建存储空间。ossClient.createBucket(createBucketRequest);} catch (OSSException oe) {System.out.println("Caught an OSSException, which means your request made it to OSS, "+ "but was rejected with an error response for some reason.");System.out.println("Error Message:" + oe.getErrorMessage());System.out.println("Error Code:" + oe.getErrorCode());System.out.println("Request ID:" + oe.getRequestId());System.out.println("Host ID:" + oe.getHostId());} catch (ClientException ce) {System.out.println("Caught an ClientException, which means the client encountered "+ "a serious internal problem while trying to communicate with OSS, "+ "such as not being able to access the network.");System.out.println("Error Message:" + ce.getMessage());} finally {if (ossClient != null) {ossClient.shutdown();}}}
}

②判断bucket是否存在

如果有以下报错就是bucket已经存在了

<Error><Code>BucketAlreadyExists</Code><Message>The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again.</Message><RequestId>623436******23630228039</RequestId><HostId>xbao-1.oss-cn-beijing.aliyuncs.com</HostId><BucketName>xbao-1</BucketName>
</Error>

③设置读写权限

默认创建出来的是“私有”项目,而我们想要的是“公共读”,所以就需要设置读写权限

(4)在实际开发中的文件上传(springcloud)

1)在中application.yml的配置

aliyun:oss:endpoint: 你的endponitkeyid: 你的阿里云keyidkeysecret: 你的阿里云keysecretbucketname: 你的阿里云bucket

2)定义工具类从配置文件中读取常量

@Data:lombok的注解
@Component: 加载到spring中
@ConfigurationProperties(prefix="aliyun.oss"):读取前缀是aliyun.oss的配置,根据名字endpoint、keyid等匹配赋值常量

@Data
@Component
@ConfigurationProperties(prefix="aliyun.oss")
public class OssProperties {private String endpoint;private String keyid;private String keysecret;private String bucketname;
}

3)文件上传的业务接口

public interface FileService {/*** 阿里云oss文件上传* @param inputStream 输入流* @param module 文件夹名称* @param originalFilename 原始文件名称* @return 文件在oss服务器上的url地址*/String upload(InputStream inputStream, String module, String originalFilename);
}
@Service
public class FileServiceImpl implements FileService {@Autowiredprivate OssProperties ossProperties;@Overridepublic String upload(InputStream inputStream, String module, String originalFilename) {// 读取配置String endpoint = ossProperties.getEndpoint();String keyid = ossProperties.getKeyid();String keysecret = ossProperties.getKeysecret();String bucketname = ossProperties.getBucketname();//判断oss实例是否存在:如果不存在则创建,如果存在则获取OSS ossClient = new OSSClientBuilder().build(endpoint, keyid, keysecret);if (!ossClient.doesBucketExist(bucketname)) {//创建bucketossClient.createBucket(bucketname);//设置oss实例的访问权限:公共读ossClient.setBucketAcl(bucketname, CannedAccessControlList.PublicRead);}//构建日期路径String folder = new DateTime().toString("yyyy/MM/dd");//文件名:uuid.扩展名String fileName = UUID.randomUUID().toString();String fileExtension = originalFilename.substring(originalFilename.lastIndexOf("."));String key = module + "/" + folder + "/" + fileName + fileExtension;//文件上传至阿里云ossClient.putObject(ossProperties.getBucketname(), key, inputStream);// 关闭OSSClient。ossClient.shutdown();//返回url地址return "https://" + bucketname + "." + endpoint + "/" + key;}
}

具体需要什么,查阅官方文档很快就能找到demo。

阿里云存储OSS《快速使用》相关推荐

  1. 阿里云存储OSS中设置上传文件content type

    阿里云存储OSS中设置上传文件ContentType 如果你使用浏览器上传文件,则浏览器会自动在header中设置正确地content type,然后对文件的访问会得到正确地回应. 如果采用编程的方式 ...

  2. SpringBoot集成阿里云存储OSS服务

    前言 该文章会先简单的介绍一下阿里云的OSS存储,然后演示如何在SpringBoot项目中集成OSS,每一步都有记录,保证初学者也能看懂. 文章目录 前言 1.阿里云存储OSS是什么? 2.Sprin ...

  3. 阿里云存储OSS(服务端直传)

    流程介绍 和数据直传到OSS相比,以上方法有三个缺点: 上传慢:用户数据需先上传到应用服务器,之后再上传到OSS.网络传输时间比直传到OSS多一倍.如果用户数据不通过应用服务器中转,而是直传到OSS, ...

  4. 解码2017双11:全球狂欢新记录背后的阿里云存储

    摘要: 2017天猫双11再次刷新纪录,这背后是大数据的支撑和阿里云计算的能力的体现.手淘.天猫APP主站的所有图片和视频都存储在阿里云对象存储OSS之上,全球数以亿计的消费者,对这些商品的访问的流量 ...

  5. spring boot上传阿里云对象存储OSS快速上手(一、控制台简介)

    代码实现请看下一篇: spring boot上传阿里云对象存储OSS快速上手(二.代码实现,复制粘贴可用) 简介: 1.阿里云对象存储OSS其实就是一个文件存储的服务 2.在我们的开发过程中会遇到类似 ...

  6. 阿里云(一)云存储OSS的命令行osscmd的安装和使用

    一.安装Python 在Linux Shell里验证Python版本: $ python -V Python 2.7.10 二.安装OSScmd SDK osscmd是基于python 2.5.4(其 ...

  7. 阿里云存储价格对象存储OSS、文件存储NAS和块存储收费标准

    阿里云云存储怎么收费?云存储1GB空间容量多少钱?如果是OSS对象存储1GB价格是0.12元/GB/月,标准存储包1TB一年价格999元:NAS文件存储100GB价格是30元一个月,500G空间150 ...

  8. C# 阿里云服务器的对象云存储OSS的上传下载删除-给OSS做个可是化界面

    一.开发环境及语言: win10 win11 VS2019的C#语言 写作语言简洁易懂. 二.解决问题 基于阿里云服务器的对象云存储OSS的SDK的第二次开发,开发对象在文件上传.下载.删除的基础上, ...

  9. 乔安监控云存储_让数据更安全可用,阿里云存储多项新功能发布

    简介:9月23日,第六期阿里云存储新品发布会如约而至,带来公共云存储.混合云存储产品的最新进展与技术突破,助力用户在数字经济时代全面转型. 1.快照跨区域复制,助力企业应用快速部署 阿里云快照服务采用 ...

  10. i 智慧 | 回首30年存储演进之路 再看新数据时代阿里云存储如何革故鼎新?

    戳蓝字"CSDN云计算"关注我们哦! 作者 | 刘丹 责编 | 阿秃 出品 | CSDN云计算(ID:CSDNcloud) 人类以日新月异的速度刷新着科技的成果,其中存储的发展历史 ...

最新文章

  1. Linux 启动详解之init
  2. 转载 - sql分页优化
  3. websocket 群/单聊 基础
  4. 今日可抢回程火车票,实测两款GitHub开源抢票插件,所有坑我们都帮你踩过了...
  5. JS(JavaScript)的初了解3(更新中···)
  6. 浏览器弹不出java_打开网址跳出弹窗“您的浏览器没有获得Java virtual machine 支持”,怎么办?...
  7. css修改layui的下拉框样式 js_layui,经典模块化前端UI框架,前端菜鸟带你初识栅格。...
  8. linux命令格式,获取帮助及其目录结构简要理解
  9. android 网络错误分析,android wifi打开过程源码解析及Wifi打开失败原因分析
  10. 简单游荣登东南快报 热门话题引争议
  11. excel如何批量制作二维码?
  12. 浅析内网沟通软件有什么特点
  13. 《指数基金投资从入门到精通》读书笔记
  14. mysql 短文本相似度_短文本相似度比较
  15. 移动web网页开发——动画
  16. vscode启动Python调试 找不到指定模块
  17. 关于win10微软商店重置后用不了的问题
  18. iTunes 播放音乐的歌词的软件:DynamicLyrics
  19. nvm安装与使用详解(Window11)
  20. 【游戏编程扯淡精粹】如何学习编程语言

热门文章

  1. 企业为什么要建立档案管理?具体如何实现?
  2. 压力传感器原理与组成
  3. 计算机每次启动时系统时间不更新,电脑每次开机都要重新设置时间
  4. 随机出题 c语言编程,在Excel中制作单机版随机出题考试系统
  5. 打造敏捷的自组织团队
  6. 数字孪生赛博朋克风格智慧城市
  7. (三-1)随机森林分类器(共3小节,完整代码即文章中所有代码)
  8. Django操作views(一)
  9. 周记——20150427
  10. Java验证邮箱格式是否正确