阿里云OSS并测试上传

时间:2021-07-15 | 标签: | 作者:Q8 | 来源:dalianpai网络

小提示:您能找到这篇{阿里云OSS并测试上传}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的阿里云OSS并测试上传内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您!

< ">什么是对象存储 OSS

< font-size: 16px;">阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存储服务。其数据设计持久性不低于 9公共关系危机种类9.9999999999%(12 个 9),服务设计可用性(或业务连续性)不低于 99.995%。

< font-size: 16px;">OSS 具有与平台无关的 RESTful API 接口,您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。

< font-size: 16px;">您可以使用阿里云提供的 API、SDK 接口或者 OSS 迁移工具轻松地将海量数据移入或移出阿里云 OSS。数据存储到阿里云 OSS 以后,您可以选择标准存储(Standard)作为移动应用、大型网站、图片分享或热点音视频的主要存储方式,也可以选择成本更低、存储期限更长的低频访问存储(Infrequent Access)和归档存储(Archive)作为不经常访问数据的存储方式。

< font-size: 16px;">相关概念

< font-size: 16px;">存储类型(Storage Class)

< font-size: 16px;">OSS 提供标准、低频访问、归档三种存储类型,全面覆盖从热到冷的各种数据存储场景。其中标准存储类型提供高可靠、高可用、高性能的对象存储服务,能够支持频繁的数据访问;低频访问存储类型适合长期保存不经常访问的数据(平均每月访问频率 1 到 2 次),存储单价低于标准类型;归档存储类型适合需要长期保存(建议半年以上)的归档数据,在三种存储类型中单价最低。详情请参见存储类型介绍。

< font-size: 16px;">存储空间(Bucket)

< font-size: 16px;">存储空间是您用于存储对象(Object)的容器,所有的对象都必须隶属于某个存储空间。存储空间具有各种配置属性,包括地域、访问权限、存储类型等。您可以根据实际需求,创建不同类型的存储空间来存储不同的数据。创建存储空间请参见创建存储空间。

< font-size: 16px;">对象/文件(Object)inmob

< font-size: 16px;">对象是 OSS 存储数据的基本单元,也被称为 OSS 的文件。对象由元信息(Object Meta)、用户数据(Data)和文件名(Key)组成。对象由存储空间内部唯一的 Key 来标识。对象元信息是一组键值对,表示了对象的一些属性,例如最后修改时间、大小等信息,同时您也可以在元信息中存储一些自定义的信息。

< font-size: 16px;">地域(Region)

< font-size: 16px;">地域表示 OSS 的数据中心所在物理位置。您可以根据费用、请求来源等选择合适的地域创建 Bucket。详情请参见 OSS 已开通的Region。

< font-size: 16px;">访问域名(Endpoint)

< font-size: 16px;">Endpoint 表示 OSS 对外服务的访问域名。OSS 以 HTTP RESTful API 的形式对外提供服务,当访问不同地域的时候,需要不同的域名。通过内网和外网访问同一个地域所需要的域名也是不同的。具体的内容请参见各个 Region 对应的 Endpoint。

< font-size: 16px;">访问密钥(AccessKey)

< font-size: 16px;">AccessKey(简称 AK)指的是访问身份验证中用到的 AccessKeyId 和 AccessKeySecret。OSS 通过使用 AccessKeyId 和 AccessKeySecret 对称加密的方法来验证某个请求的发送者身份。AccessKeyId 用于标识用户;AccessKeySecret 是用户用于加密签名字符串和 OSS 用来验证签名字符串的密钥,必须保密。获取 AccessKey 的方法请参见创建 AccessKey。

< font-size: 16px;">相关服务

< font-size: 16px;">您把数据存储到 OSS 以后,就可以使用阿里云提供的其他产品和服务对其进行相关操作。

< font-size: 16px;">以下是您会经常使用到的阿里云产品和服务:

< font-size: 16px;">图片处理(IMG):对存储在 OSS 上的图片进行格式转换、缩放、裁剪、旋转、添加水印等各种操作。请参见快速使用 OSS 图片处理服务。

< font-size: 16px;">云服务器(ECS):提供简单高效、处理能力可弹性伸缩的云端计算服务。请参见 ECS 产品详情页面。

< font-size: 16px;">内容分发网络(CDN):将 OSS 资源缓存到各区域的边缘节点,利用边缘节点缓存的数据,提升同一个文件,被边缘节点客户大量重复下载的体验。请参见 CDN 产品详情页面。

< font-size: 16px;">E-MapReduce:构建于 ECS 上的大数据处理的系统解决方案,基于开源的 Apache Hadoop 和 Apache Spark,方便您分析和处理自己的数据。请参见 E-MapReduce 产品详情页面。

< font-size: 16px;">媒体处理:将存储于 OSS 的音视频转码成适合在 PC、TV 以及移动终端上播放的格式。并基于海量数据深度学习,对音视频的内容、文字、语音、场景多模态分析,实现智能审核、内容理解、智能编辑。请参见媒体处理产品详情页面。

< font-size: 16px;">管理 OSS

< font-size: 16px;">通过 OSS 控制台管理 OSS

< font-size: 16px;">OSS 提供了 Web 服务页面,您可以登录 OSS 管理控制台,管理您的 OSS。详情请参见控制台用户指南。

< font-size: 16px;">通过 API 或 SDK 管理 OSS



< font-size: 16px;">OSS 提供 RESTful API 和各种语言的 SDK 开发包,方便您快速进行二次开发。详情请参见 OSS API 参考和 OSS SDK 参考。

< font-size: 16px;">通过工具管理 OSS

< font-size: 16px;">OSS 提供各类型的管理工具,您可以通过工具管理您的 OSS。详情请参见 OSS 常用工具。

< font-size: 16px;"> 基本概念

< font-size: 16px;">存储空间(Bucket)

< font-size: 16px;">存储空间是用户用于存储对象(Object)的容器,所有的对象都必须隶属于某个存储空间。存储空间具有各种配置属性,包括地域、访问权限、存储类型等。用户可以根据实际需求,创建不同类型的存储空间来存储不同的数据。

< font-size: 16px;">同一个存储空间的内部是扁平的,没有文件系统的目录等概念,所有的对象都直接隶属于其对应的存储空间。

< font-size: 16px;">每个用户可以拥有多个存储空间。

< font-size: 16px;">存储空间的名称在 OSS 范围内必须是全局唯一的,一旦创建之后无法修改名称。



< font-size: 16px;">存储空间内部的对象数目没有限制。

< font-size: 16px;">存储空间的命名规范如下:

< font-size: 16px;">只能包括小写字母、数字和短横线(-)。

< font-size: 16px;">必须以小写字母或者数字开头和结尾。

< font-size: 16px;">长度必须在 3–63 字节之间。

< font-size: 16px;">对象/文件(Object)

< font-size: 16px;">对象是 OSS 存储数据的基本单元,也被称为 OSS 的文件。对象由元信息(Object Meta),用户数据(Data)和文件名(Key)组成。对象由存储空间内部唯一的 Key 来标识。对象元信息是一组键值对,表示了对象的一些属性,比如最后修改时间、大小等信息,同时用户也可以在元信息中存储一些自定义的信息。

< font-size: 16px;">对象的生命周期是从上传成功到被删除为止。在整个生命周期内,只有通过追加上传的 Object 可以继续通过追加上传写入数据,其他上传方式上传的 Object 内容无法编辑,您可以通过重复上传同名的对象来覆盖之前的对象。

< font-size: 16px;">对象的命名规范如下:

< font-size: 16px;">使用 UTF-8 编码。

< font-size: 16px;">长度必须在 1–1023 字节之间。

< font-size: 16px;">不能以正斜线(/)或者反斜线()开头。

< font-size: 16px;">说明 对象名称需要区分大小写。如无特殊说明,本文档中的对象、文件称谓等同于 Object。

< font-size: 16px;">Region(地域)

< font-size: 16px;">Region 表示 OSS 的数据中心所在物理位置。用户可以根据费用、请求来源等选择合适的地域创建 Bucket。一般来说,距离用户更近的 Region 访问速度更快。详情请查看 OSS 已经开通的 Region。

< font-size: 16px;">Region 是在创建 Bucket 的时候指定的,一旦指定之后就不允许更改。该 Bucket 下所有的 Object 都存储在对应的数据中心,目前不支持 Object 级别的 Region 设置。

< font-size: 16px;">Endpoint(访问域名)

< font-size: 16px;">Endpoint 表示 OSS 对外服务的访问域名。OSS 以 HTTP RESTful API 的形式对外提供服务,当访问不同的 Region 的时候,需要不同的域名。通过内网和外网访问同一个 Region 所需要的 Endpoint 也是不同的。例如杭州 Region 的外网 Endpoint 是 oss-cn-hangzhou.aliyuncs.com,内网 Endpoint 是 oss-cn-hangzhou-internal.aliyuncs.com。具体的内容请参见各个 Region 对应的 Endpoint。

< font-size: 16px;">AccessKey(访问密钥)

< font-size: 16px;">AccessKey(简称 AK)指的是访问身份验证中用到的 AccessKeyId 和 AccessKeySecret。OSS 通过使用 AccessKeyId 和 AccessKeySecret 对称加密的方法来验证某个请求的发送者身份。AccessKeyId 用于标识用户;AccessKeySecret 是用户用于加密签名字符串和 OSS 用来验证签名字符串的密钥,必须保密。对于 OSS 来说,AccessKey 的来源有:

< font-size: 16px;">Bucket 的拥有者申请的 AccessKey。

< font-size: 16px;">被 Bucket 的拥有者通过 RAM 授权给第三方请求者的 AccessKey。

< font-size: 16px;">被 Bucket 的拥有者通过 STS 授权给第三方请求者的 AccessKey。

< font-size: 16px;">创建OSS

< font-size: 16px;">

< font-size: 16px;">

< font-size: 16px;">

< font-size: 16px;"> 创建子用户

< font-size: 16px;">

< font-size: 16px;"> 原生SDK上传

< font-size: 16px;">    @Test

< font-size: 16px;">    void upload() {

< font-size: 16px;">        // Endpoint以杭州为例,其它Region请按实际情况填写。

< font-size: 16px;">        String endpoint = "http://oss-cn-hangzhou.aliyuncs.com";

< font-size: 16px;">        // 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。

< font-size: 16px;">        String accessKeyId = "LTAI4FzQD4543kCervA5vy";

< font-size: 16px;">        String accessKeySecret = "wmCFWidrtvJK08ZvAIukf0OexyGRZ";

< font-size: 16px;">        // 创建OSSClient实例。

< font-size: 16px;">        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);

< font-size: 16px;">        // 创建PutObjectRequest对象。

< font-size: 16px;">        String content = "C:\Users\asus\Desktop\node-disk-manager-amd64.tar";

< font-size: 16px;">        // <yourObjectName>表示上传文件到OSS时需要指定包含文件后缀在内的完整路径,例如abc/efg/123.jpg。

< font-size: 16px;">        PutObjectRequest putObjectRequest = new PutObjectRequest("gulimall-dalianpai", "k8s.tar", new ByteArrayInputStream(content.getBytes()));

< font-size: 16px;">        // 如果需要上传时设置存储类型与访问权限,请参考以下示例代码。

< font-size: 16px;">        // ObjectMetadata metadata = new ObjectMetadata();

< font-size: 16px;">        // metadata.setHeader(OSSHeaders.OSS_STORAGE_CLASS, StorageClass.Standard.toString());

< font-size: 16px;">        // metadata.setObjectAcl(CannedAccessControlList.Private);

< font-size: 16px;">        // putObjectRequest.setMetadata(metadata);

< font-size: 16px;">        // 上传字符串。

< font-size: 16px;">        ossClient.putObject(putObjectRequest);

< font-size: 16px;">        // 关闭OSSClient。

< font-size: 16px;">        ossClient.shutdown();

< font-size: 16px;">    }  

< font-size: 16px;"> 与SpringCloud整合上传,注意这个官网API,我在上传的时候,流会被截断,上传的不完整。

< font-size: 16px;">spring:

< font-size: 16px;">  application:

< font-size: 16px;">    name: gulimall-product

< font-size: 16px;">  cloud:

< font-size: 16px;">    nacos:

< font-size: 16px;">      discovery:

< font-size: 16px;">        server-addr: 192.168.1.118:8848

< font-size: 16px;">      config:



< font-size: 16px;">        server-addr: 192.168.1.118:8848

< font-size: 16px;">        namespace: 1a99a442-e66b-4fa6-8da7-e08cab3727de

< font-size: 16px;">        group: dev

< font-size: 16px;">        file-extension: yaml

< font-size: 16px;">    alicloud:

< font-size: 16px;">      access-key: LTAI4Fz32kWpSNkCervA5vy

< font-size: 16px;">      secret-key: wmCFWidt8YvJK32vAIukf0OexyGRZ

< font-size: 16px;">      oss:

< font-size: 16px;">        endpoint: oss-cn-beijing.aliyuncs.com

< font-size: 16px;">    @Test

< font-size: 16px;">    void upload2() throws FileNotFoundException {

< font-size: 16px;">        // 创建PutObjectRequest对象。

< font-size: 16px;">        InputStream fileInputStream = new FileInputStream("C:\Users\asus\Desktop\荣哥v1.docx");

< font-size: 16px;">        ossClient.putObject("gulimall-dalianpai-oss", "荣哥v1.docx",fileInputStream);

< font-size: 16px;">        ossClient.shutdown();

< font-size: 16px;">        System.out.println("上传成功");

< font-size: 16px;">    }

< font-size: 16px;">

< font-size: 16px;">版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

< font-size: 16px;">本文链接:https://blog.csdn.net/qq_29860591/article/details/106417565

阿里云OSS并测试上传

上一篇:Azure:自定义游戏服务器扩展参考体系结构
下一篇:shopee、Lazada本土店物流如何利用虚拟仓发货?


版权声明:以上主题为“阿里云OSS并测试上传"的内容可能是本站网友自行发布,或者来至于网络。如有侵权欢迎联系我们客服QQ处理,谢谢。
相关内容
推荐内容
扫码咨询
    阿里云OSS并测试上传
    打开微信扫码或长按识别二维码

小提示:您应该对本页介绍的“阿里云OSS并测试上传”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通阿里云OSS并测试上传的相关事宜。

关键词:阿里云OSS并测试上传,阿里

关于 | 业务 | 案例 | 免责 | 隐私
客服邮箱:sales@1330.com.cn
电话:400-021-1330 | 客服QQ:865612759
沪ICP备12034177号 | 沪公网安备31010702002418号