你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 存储 REST API 引用

Microsoft Azure 存储服务 REST API 通过存储模拟器,为 Azure 或开发环境中的 Blob、队列、表和文件服务提供编程访问。

可以通过 REST API 访问所有存储服务。 可以从 Azure 运行的服务中访问存储服务,也可以直接通过 Internet 从可以发送 HTTP/HTTPS 请求和接收 HTTP/HTTPS 响应的任何应用程序中进行访问。

重要

Azure 存储服务支持 HTTP 和 HTTPS;但强烈建议你使用 HTTPS。

存储帐户

对存储服务的所有访问都是通过存储帐户进行的。 存储帐户是用于访问每个基本服务的最高级别的命名空间。 这也是授权的基础。

用于存储服务的 REST API 将存储帐户公开为资源。

Blob 服务

Blob 服务为实体提供了存储,例如,二进制文件和文本文件。 用于 Blob 服务的 REST API 公开两种资源:容器和 Blob。 容器类似于一个文件夹,其中包含一组 Blob;每个 Blob 都必须驻留在容器中。 Blob 服务定义了三种类型的 Blob:

  • 块 Blob,针对流进行了优化。 这种类型的 Blob 是 2009-09-19 之前版本中提供的唯一 Blob 类型。

  • 页 Blob,针对随机读取/写入操作进行了优化,并提供了在 Blob 中写入一定范围字节的功能。 2009-09-19 及更高版本提供了页 Blob。 这些主要用于支持 Azure VM 的 VHD 文件。

  • 追加 Blob,这些 Blob 仅针对追加操作进行优化。 追加 Blob 仅适用于版本 2015-02-21 及更高版本。

容器和 Blob 支持采用名称-值对形式的用户定义的元数据(在请求操作上将其指定为标头)。

通过使用用于 Blob 服务的 REST API,开发人员可以创建类似于文件系统的分层命名空间。 Blob 名称可以使用可配置的路径分隔符对层次结构进行编码。 例如,Blob 名称 为 MyGroup/MyBlob1MyGroup/MyBlob2 意味着 Blob 的虚拟组织级别。 Blob 的枚举操作支持以类似于文件系统的方式遍历虚拟层次结构,以便返回划分到组中的一组 Blob。 例如,可以枚举 在 MyGroup/ 下组织的所有 Blob。

可以通过两种方式之一创建块 Blob。 可以使用单个 放置 Blob 操作上传 Blob,也可以使用 Put Block 操作将 Blob 作为一组块上传,并使用 “放置块列表” 操作将这些块提交到 Blob。

使用对 Put Blob 的调用创建和初始化页 Blob 的最大大小。 若要将内容写入页 Blob,请调用 “放置页” 操作。

可以通过调用 Put Blob 来创建追加 Blob。 使用放置 Blob 操作创建的追加 Blob 不包含任何内容。 若要将内容写入追加 Blob,可以通过调用追加 块操作将 块添加到 Blob 的末尾。 不支持更新或删除现有块。 每个块的大小可能不同,最大为 4 MiB。 追加 Blob 的最大大小为 195 GiB,追加 blob 可以包含不超过 50,000 个块。

Blob 支持条件更新操作,这对并发控制和高效上载可能是非常有用的。

可以通过调用获取 Blob 操作来读取 Blob 。 客户端可以读取整个 Blob 或任意范围的字节。

有关 Blob 服务 API 参考,请参阅 Blob 服务 REST API

队列服务

队列服务在服务中以及服务之间提供可靠且持久的消息传递。 用于队列服务的 REST API 公开两种资源:队列和消息。

队列支持采用名称-值对形式的用户定义的元数据(在请求操作上将其指定为标头)。

每个存储帐户可以具有不限数量的消息队列,将在帐户中唯一地命名这些队列。 每个消息队列可以包含不限数量的消息。 对于版本 2011-08-18,消息的最大大小限制为 64 KiB,对于以前版本,消息的最大大小限制为 8 KiB。

从队列中读取消息时,使用者需要处理该消息,然后将其删除。 在读取消息后,将在指定的间隔内使该消息对其他使用者可见。 如果在间隔到期时仍未删除该消息,则会恢复其可见性,以使其他使用者可以处理该消息。

有关队列服务的详细信息,请参阅 队列服务 REST API

表服务

表服务以表的形式提供了结构化存储。 表服务支持实现 OData 协议的 REST API。

在存储帐户中,开发人员可以创建表。 表将数据存储为实体。 实体是命名属性及其值的集合,类似于行。 将对表进行分区以支持跨存储节点的负载平衡。 每个表将分区键作为第一个属性,该键指定了实体所属的分区。 第二个属性是一个行键,它标识给定分区中的实体。 分区键和行键组合构成了主键,可以唯一地标识表中的每个实体。

表服务不会强制采用任何架构。 开发人员可以选择在客户端实现并强制采用某种架构。 有关表服务的详细信息,请参阅 表服务 REST API

文件服务

服务器消息块 (SMB) 协议是目前在本地使用的首选文件共享协议。 使用 Microsoft Azure 文件服务,客户无需重新编写 SMB 客户端应用程序,即可充分利用 Azure 的云基础结构即服务 (IaaS) SMB 的可用性和可伸缩性。

Azure 文件服务还提供了一种极具吸引力的解决方案,以替代传统的直连存储 (DAS) 和存储域网络 (SAN) 解决方案。通常,这些传统的解决方案安装、配置和操作起来很复杂,而且成本又高。

Azure 文件服务共享中存储的文件既可通过 SMB 协议访问,也可通过 REST API 访问。 文件服务提供以下四个资源:存储帐户、共享、目录和文件。 共享可用于组织文件集,也可作为云中托管的 SMB 文件共享进行装载。

另请参阅

Blob 服务 REST API队列服务 REST API表服务 REST API文件服务 REST API