本文内容
Azure Stack Hub 提供一组存储服务,包括 Blob、表和队列存储。
使用本文作为使用 Azure Stack Hub 存储开发工具的入门指南。 可以在对应的 Azure 存储教程中,找到更多的详细信息和示例代码。
备注
Azure Stack Hub 存储和 Azure 存储之间存在一些差异,包括每个平台的特定要求。 例如,Azure Stack Hub 有特定的客户端库以及终结点后缀要求。 有关详细信息,请参阅 Azure Stack Hub 存储:差异和注意事项。
对于存储客户端库,请了解与 REST API 兼容的版本。 还必须在代码中指定 Azure Stack Hub 终结点。
备注
旧版 .NET 和 Java 客户端库依赖于易受攻击的 Jackson 包版本,因此存在一个高严重性漏洞。 强烈建议使用 .NET 和 Java 客户端库的最新受支持版本来避免安全问题。
若要通过编辑器进行安装,请执行以下操作(以 Blob 为例):
在项目的根目录中,使用以下代码创建一个名为 composer.json 的文件:
{ "require": { "Microsoft/azure-storage-blob":"1.2.0" } }
将 composer.phar 下载到项目根目录。
运行:
php composer.phar install
。
若要使用新的 .NET 客户端库(通用:v12.9.0 / Blob:v12.10.0 / 队列:v12.8.0)和 Java 客户端库(通用:v12.12.0 / Blob:v12.13.0 / 队列:v12.10.0),必须在每个客户端类(包括 BlobServiceClient、BlobContainerClient、BlobClient、QueueServiceClient 和 QueueClient)中显式指定 serviceVersion,因为 Azure Stack Hub 目前不支持在客户端类中指定默认版本 。
BlobClientOptions options = new BlobClientOptions(BlobClientOptions.ServiceVersion.V2019_07_07);
BlobServiceClient client = new BlobServiceClient("<connection_string>", options);
BlobServiceVersion version = BlobServiceVersion.V2019_07_07;
BlobServiceClient blobServiceClient = new BlobServiceClientBuilder()
.endpoint("<your_endpoint>")
.sasToken("<your_SAS_token>")
.serviceVersion(version)
.buildClient();
若要通过编辑器进行安装,请执行以下操作(以 Blob 为例):
在项目的根目录中,使用以下代码创建一个名为 composer.json 的文件:
{ "require": { "Microsoft/azure-storage-blob":"1.2.0" } }
将 composer.phar 下载到项目根目录。
运行:
php composer.phar install
。
若要使用新的 .NET 客户端库(通用:v12.9.0 / Blob:v12.10.0 / 队列:v12.8.0)和 Java 客户端库(通用:v12.12.0 / Blob:v12.13.0 / 队列:v12.10.0),必须在每个客户端类(包括 BlobServiceClient、BlobContainerClient、BlobClient、QueueServiceClient 和 QueueClient)中显式指定 serviceVersion,因为 Azure Stack Hub 目前不支持在客户端类中指定默认版本 。
BlobClientOptions options = new BlobClientOptions(BlobClientOptions.ServiceVersion.V2019_07_07);
BlobServiceClient client = new BlobServiceClient("<connection_string>", options);
BlobServiceVersion version = BlobServiceVersion.V2019_07_07;
BlobServiceClient blobServiceClient = new BlobServiceClientBuilder()
.endpoint("<your_endpoint>")
.sasToken("<your_SAS_token>")
.serviceVersion(version)
.buildClient();
若要通过编辑器进行安装,请执行以下操作(以 Blob 为例):
在项目的根目录中,使用以下代码创建一个名为 composer.json 的文件:
{ "require": { "Microsoft/azure-storage-blob":"1.2.0" } }
将 composer.phar 下载到项目根目录。
运行:
php composer.phar install
。
Azure Stack Hub 终结点包含两个部分:区域的名称和 Azure Stack Hub 域。 在 Azure Stack 开发工具包中,默认终结点是 local.azurestack.external。 如果不确定你的终结点,请与云管理员联系。
对于 Azure Stack Hub,在 app.config 文件中指定终结点后缀:
<add key="StorageConnectionString"
value="DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;
EndpointSuffix=local.azurestack.external;" />
对于 Azure Stack Hub,在连接字符串的设置中指定终结点后缀:
public static final String storageConnectionString =
"DefaultEndpointsProtocol=http;" +
"AccountName=your_storage_account;" +
"AccountKey=your_storage_account_key;" +
"EndpointSuffix=local.azurestack.external";
对于 Azure Stack Hub,在声明实例中指定终结点后缀:
var blobSvc = azure.createBlobService('myaccount', 'mykey',
'myaccount.blob.local.azurestack.external');
对于 Azure Stack Hub,在连接字符串的设置中指定终结点后缀:
const utility::string_t storage_connection_string(U("DefaultEndpointsProtocol=https;
AccountName=your_storage_account;
AccountKey=your_storage_account_key;
EndpointSuffix=local.azurestack.external"));
对于 Azure Stack Hub,在连接字符串的设置中指定终结点后缀:
$connectionString = 'BlobEndpoint=https://<storage account name>.blob.local.azurestack.external/;
QueueEndpoint=https:// <storage account name>.queue.local.azurestack.external/;
TableEndpoint=https:// <storage account name>.table.local.azurestack.external/;
AccountName=<storage account name>;AccountKey=<storage account key>'
对于 Azure Stack Hub,在声明实例中指定终结点后缀:
block_blob_service = BlockBlobService(account_name='myaccount',
account_key='mykey',
endpoint_suffix='local.azurestack.external')
对于 Azure Stack Hub,在连接字符串的设置中指定终结点后缀:
set
AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;
AccountName=myaccount;
AccountKey=mykey;
EndpointSuffix=local.azurestack.external
以下 Azure Blob 存储教程适用于 Azure Stack Hub。 请注意前面示例部分中所述的 Azure Stack Hub 特定终结点后缀需求。
- 通过 .NET 开始使用 Azure Blob 存储
- 如何通过 Java 使用 Blob 存储
- 如何通过 Node.js 使用 Blob 存储
- 如何通过 C++ 使用 Blob 存储
- 如何通过 PHP 使用 Blob 存储
- 如何通过 Python 使用 Azure Blob 存储
- 如何通过 Ruby 使用 Blob 存储
以下 Azure 队列存储教程适用于 Azure Stack Hub。 请注意前面示例部分中所述的 Azure Stack Hub 特定终结点后缀需求。
- 通过 .NET 开始使用 Azure 队列存储
- 如何通过 Java 使用队列存储
- 如何通过 Node.js 使用队列存储
- 如何通过 C++ 使用队列存储
- 如何通过 PHP 使用队列存储
- 如何通过 Python 使用队列存储
- 如何通过 Ruby 使用队列存储
以下 Azure 表存储教程适用于 Azure Stack Hub。 请注意前面示例部分中所述的 Azure Stack Hub 特定终结点后缀需求。