近期,有细心的同学发现,在又拍云控制台中的云存储产品中增加了针对 S3 协议标准的兼容支持,授权用户通过 S3 协议标准对存储空间的数据进行读写操作。此配置操作之前是由人工协助的方式提供给用户使用的,现为方便大家自助使用,将其在控制台上做了统一的配置开放。

可能有部分用户对 S3 协议了解不多,那我们就来简单介绍下 S3。

S3 是 Simple Storage Service 的缩写,即简单存储服务。S3 协议由亚马逊公司推出,原本是专门针对 Amazon S3 而产生的,在 URL 中,指定一个 Amazon S3 桶的位置以及用来读写该桶中文件的前缀。用户可以定义只读外部表使用 S3 桶中现有的数据文件作为表数据,或者创建可写外部表将来自于 INSERT 操作的数据存储到 S3 桶中的文件。发展至今,S3 协议已经发展成为一个非常强大的数据管理接口。与传统的文件系统接口不同,它为应用程序开发人员提供了一种通过丰富的 API 集控制数据的方法。

S3 API

S3 API 是一个应用程序编程接口,为云存储提供上传、检索、列出和删除对象的能力。S3 API 支持标准的 REST(Representational State Transfer)和 SOAP(Simple Object Access Protocol)协议,目前,HTTP 上的 SOAP 支持已弃用,SOAP 仍可在 HTTPS 上使用。SOAP 目前已不支持再在 HTTP 上使用,也不支持主流 S3 功能,强烈建议您使用 REST 协议访问,REST 协议也是 S3 主要的访问协议。

REST 协议是一种基于 HTTP 协议的轻量级协议,使用标准的 HTTP 请求方法(GET、PUT、DELETE 等)和状态码(200、404、403 等)来进行对象存储服务的操作。使用 S3 协议,您可以通过编写简单的程序或使用 AWS 提供的 SDK(Software Development Kit)来访问和管理又拍云存储中的数据对象,例如上传和下载文件、删除和复制文件等。

又拍云支持的 S3 API 如下图所示:

签名认证和API路径

又拍云存储同时兼容 AWS Signature Version 2 和 AWS Signature Version 4,均实现了请求头签名和参数签名方式。

又拍云存储的路径风格格式为: https://s3.api.upyun.com/<bucket名称>/<Object存储路径>,bucket 名字作为路径使用的一部分,类似于又拍云存储目前使用的 RESTful API  路径形式。

虚拟主机风格格式为: https://<bucket名称>.s3.api.upyun.com/<Object存储路径>。

S3 协议使用示例

在了解了 S3 API 的基本信息后,下面我就 S3 API 使用做个简单示例。

WinScp(Windows用户)

  1. 下载 WinSCP。

  2. 打开程序,新建会话。

文件协议:Amazon S3

主机名:s3.api.upyun.com

端口:默认(443)

访问密钥: 从云存储控制台中获取,对应 AccessKey。

私密访问密钥:从云存储控制台中获取,对应 SecretKey。

  1. 连接成功,进入配置管理界面。

Cyberduck(windows、Mac用户)

1. Cyberduck 客户端下载。

2. 打开客户端,选择新建连接。

文件协议:Amazon S3

服务器:s3.api.upyun.com

端口:默认(443)

访问密钥 ID: 从云存储控制台中获取,对应 AccessKey。

访问私钥:从云存储控制台中获取,对应 SecretKey。

  1. 连接成功,进入管理配置页面,操作和 FTP 客户端大同小异。

Postman(API开发者)

1. 以获取 testautomata 存储根目录列表为例,打开 Postman 后,配置请求地址与请求参数。

依照 List Objects 的 API 文档组织请求方法、请求地址与请求参数,各参数释义参考又拍云存储 S3 协议文档。

请求方法:GET

URL地址:https://testautomata.s3.api.upyun.com/?list-type=2&delimiter=/

  1. 配置 API 接口鉴权,Postman 内置 S3 鉴权,可在 Authorization 选项卡下进行配置。

type:选择 AWS Signature

AccessKey:从云存储控制台中获取

SecretKey:从云存储控制台中获取

Service Name:s3

  1. 发起请求,获取存储列表数据。



目前又拍云存储在控制台上已开放 S3 协议的统一配置获取,您可以使用任何兼容 S3 的工具来操作又拍云存储,还不赶紧来试试~

聊聊又拍云存储 S3 协议的使用的更多相关文章

  1. ECStore图片云端集群存储实践-又拍云存储

    通过又拍云存储REST API ,为ECStore新增图片存储引擎,从而达到图片数据与主站数据分离.提高网站性能. 图片存储引擎相关文件添加与修改 一共涉及到ECStore 2个APP 的文件添加和修 ...

  2. 又拍云叶靖:OpenResty 在又拍云存储中的应用

    2019 年 7 月 6 日,OpenResty 社区联合又拍云,举办 OpenResty × Open Talk 全国巡回沙龙·上海站,又拍云平台开发部负责人叶靖在活动上做了<OpenRest ...

  3. 【实战分享】又拍云 OpenResty / Nginx 服务优化实践

    2018 年 11 月 17 日,由 OpenResty 主办的 OpenResty Con 2018 在杭州举行.本次 OpenResty Con 的主题涉及 OpenResty 的新开源特性.业界 ...

  4. (转)云存储:阿里云OSS 、又拍云和 七牛 的比较

    阿里OSS:好处就是,那是一套完整的体系,存储,数据库,CDN,服务器,阿里都可以给你全包.缺点,费用对于没有盈利的网站来说太高了,好像定位就是给那些高端客户使用的,而且CDN,OSS的流量是分开收费 ...

  5. s3存储桶:s3可扩展的云存储

    S3(Simple Storage Service,简单存储服务),即可扩展的云存储,又称桶存储,S3 是一种面向 Internet 的存储服务.S3为任意类型的文件提供临时或永久的存储服务.用于存储 ...

  6. 基于LAMP php7.1搭建owncloud云盘与ceph对象存储S3借口整合案例

    ownCloud简介 是一个来自 KDE 社区开发的免费软件,提供私人的 Web 服务.当前主要功能包括文件管理(内建文件分享).音乐.日历.联系人等等,可在PC和服务器上运行. 简单来说就是一个基于 ...

  7. 使用FileZilla Pro S3协议访问七牛云对象存储

    偶然发现FileZilla还有Pro版本,主要是比免费版多了一些协议支持,也偶然发现七牛云支持了S3协议接口,这样刚好弥补了其没有FTP的不足,于是找官方文档,折腾一下,使用FileZilla Pro ...

  8. .NET Core AWS S3云存储

    前言 最近有需要用到AWS S3云存储上传附件,这里对利用.NET或.NET Core在调用SDK APi需要注意的一点小问题做个记录,或许能对后续有用到的童鞋提供一点帮助 AWS S3云存储 官方已 ...

  9. 以绝对优势立足:从CDN和云存储来聊聊云生态的崛起

    以绝对优势立足:从CDN和云存储来聊聊云生态的崛起 前面几期文章我们介绍了混合云模式,以及面向应用层的云架构解决方案的Spring Cloud.接下来,我们就以蘑菇街的两个具体案例,来分享一下基于混合 ...

  10. 使用plupload绕过服务器,批量上传图片到又拍云

    本文最初发布于我的个人博客:Jerry的乐园 综述 论坛或者贴吧经常会需要分享很多图片,上传图片比较差的做法是上传到中央服务器上,中央服务器再转发给静态图片服务器.而这篇文章讲介绍如何使用pluplo ...

随机推荐

  1. 基础常用API总结2

    String java.lang包下 返回值类型 方法 功能 boolean matches(String regex) 如果匹配当前字符串中regex(正则表达式)所表示的字符,如果有返回ture没 ...

  2. Java开发准备

    1.Java是一门面向对象的高级语言 JDK:是java development kit的缩写,意思是java程序开发的工具包. 可以用来开发Java和运行Java程序 JRE:Java Runtim ...

  3. vue3组合式API介绍

    为什么要使用Composition API? 根据官方的说法,vue3.0的变化包括性能上的改进.更小的 bundle 体积.对 TypeScript 更好的支持.用于处理大规模用例的全新 API,全 ...

  4. Apktool-安卓逆向反编译工具的安装与使用

    一.安装Apktool 1.下载Windows 包装器脚本(右键单击,将连接另存为apktool.bat) 2.下载 Apktool-2,重命名为apktool.jar 3.将下载的放在同一文件夹下 ...

  5. 【必知必会的MySQL知识】①初探MySQL

    目录 前言 MySQL是什么? MySQL版本 表的概念 表中的列和数据类型 行 主键 什么是SQL 实践操作 小结 前言 周所周知MySQL已成为全世界最受欢迎的数据库之一.无论你用的何种编程语言在 ...

  6. 浅谈如何使用 github.com/kardianos/service

    在实际开发过程中,有时候会遇到如何编写Go开机自启服务的需求,在linux中我们可以使用systemd来进行托管,windows下可以通过注册表来实现,mac下可以通过launchd来实现,上面的方式 ...

  7. python自产调试工具pdb的使用

    python自产调试工具pdb的使用 介绍 调试打印在写代码的时候不可避免 项目越大,调试可能花的时间会越多 print调试可能是最早用的,一段时间内你都会习惯这种方式 一旦成了老鸟,你应该会去用ID ...

  8. 基于ORB-SLAM3库搭建SLAM系统

    参考资料 ORB-SLAM3配置及安装教程 ORB-SLAM3配置安装及运行 环境配置 Win 11pro VMware 17Pro Ubuntu 18.04 Eigen3 Pangolin Open ...

  9. vue移动端适配方案

    一.安装postcss-px-to-viewport插件 1.使用npm安装 $ npm install postcss-px-to-viewport --save-dev 2.或者使用yarn安装 ...

  10. 2022-10-02:以下go语言代码能否通过编译?A: 能;B: 不能;C: 不知道。 package main import ( “fmt“ ) type worker interfa

    2022-10-02:以下go语言代码能否通过编译?A: 能:B: 不能:C: 不知道. package main import ( "fmt" ) type worker int ...