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

QueueServiceClient class

QueueServiceClient 表示 Azure 存储队列服务的 URL,允许你操作队列。

扩展

StorageClient

构造函数

QueueServiceClient(string, Pipeline)

创建 QueueServiceClient 的实例。

QueueServiceClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

创建 QueueServiceClient 的实例。

继承属性

accountName
url

URL 字符串值。

方法

createQueue(string, QueueCreateOptions)

在指定的帐户下创建新队列。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/create-queue4

deleteQueue(string, QueueDeleteOptions)

永久删除指定的队列。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/delete-queue3

fromConnectionString(string, StoragePipelineOptions)

创建 QueueServiceClient 的实例。

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

仅适用于使用共享密钥凭据构造的 QueueServiceClient。

基于传入的客户端属性和参数生成帐户共享访问签名 (SAS) URI。 SAS 由客户端的共享密钥凭据签名。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas

generateSasStringToSign(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

仅适用于使用共享密钥凭据构造的 QueueServiceClient。

根据传入的客户端属性和参数生成用于对帐户共享访问签名(SAS)URI 进行签名的字符串。 SAS 由客户端的共享密钥凭据签名。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas

getProperties(ServiceGetPropertiesOptions)

获取存储帐户的队列服务的属性,包括存储分析和 CORS(跨域资源共享)规则的属性。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/get-queue-service-properties

getQueueClient(string)

创建 QueueClient 对象。

getStatistics(ServiceGetStatisticsOptions)

检索与队列服务的复制相关的统计信息。 仅当为存储帐户启用读取访问异地冗余复制时,它才可用于辅助位置终结点。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/get-queue-service-stats

listQueues(ServiceListQueuesOptions)

返回异步可迭代迭代器以列出指定帐户下的所有队列。

.byPage() 返回异步可迭代迭代迭代器以列出页面中的队列。

使用 for await 语法的示例:

let i = 1;
for await (const item of queueServiceClient.listQueues()) {
  console.log(`Queue${i}: ${item.name}`);
  i++;
}

使用 iter.next()的示例:

let i = 1;
let iterator = queueServiceClient.listQueues();
let item = await iterator.next();
while (!item.done) {
  console.log(`Queue${i}: ${item.value.name}`);
  i++;
  item = await iterator.next();
}

使用 byPage()的示例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const item2 of queueServiceClient.listQueues().byPage({ maxPageSize: 20 })) {
  if (item2.queueItems) {
    for (const queueItem of item2.queueItems) {
      console.log(`Queue${i}: ${queueItem.name}`);
      i++;
    }
  }
}

对标记使用分页的示例:

let i = 1;
let iterator = queueServiceClient.listQueues().byPage({ maxPageSize: 2 });
let item = (await iterator.next()).value;

// Prints 2 queue names
if (item.queueItems) {
  for (const queueItem of item.queueItems) {
    console.log(`Queue${i}: ${queueItem.name}`);
    i++;
  }
}
// Gets next marker
let marker = item.continuationToken;

// Passing next marker as continuationToken
iterator = queueServiceClient.listQueues().byPage({ continuationToken: marker, maxPageSize: 10 });
item = (await iterator.next()).value;

// Prints 10 queue names
if (item.queueItems) {
  for (const queueItem of item.queueItems) {
    console.log(`Queue${i}: ${queueItem.name}`);
    i++;
  }
}
setProperties(QueueServiceProperties, ServiceGetPropertiesOptions)

设置存储帐户队列服务终结点的属性,包括存储分析、CORS(跨域资源共享)规则和软删除设置的属性。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/set-queue-service-properties

构造函数详细信息

QueueServiceClient(string, Pipeline)

创建 QueueServiceClient 的实例。

new QueueServiceClient(url: string, pipeline: Pipeline)

参数

url

string

指向 Azure 存储队列服务的 URL 字符串,例如“https://myaccount.queue.core.windows.net"。 如果使用 AnonymousCredential(如“https://myaccount.queue.core.windows.net?sasString"),则可以追加 SAS。

pipeline
Pipeline

调用 newPipeline()以创建默认管道,或提供自定义管道。

QueueServiceClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

创建 QueueServiceClient 的实例。

new QueueServiceClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

参数

url

string

指向 Azure 存储队列服务的 URL 字符串,例如“https://myaccount.queue.core.windows.net"。 如果使用 AnonymousCredential(如“https://myaccount.queue.core.windows.net?sasString"),则可以追加 SAS。

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

例如 AnonymousCredential、StorageSharedKeyCredential 或任何来自 @azure/identity 包的凭据,用于对服务的请求进行身份验证。 还可以提供实现 TokenCredential 接口的对象。 如果未指定,则使用 AnonymousCredential。

options
StoragePipelineOptions

用于配置 HTTP 管道的选项。

@azure/identity使用 DefaultAzureCredential 的示例:

const account = "<account>";

const credential = new DefaultAzureCredential();

const queueServiceClient = new QueueServiceClient(
  `https://${account}.queue.core.windows.net`,
  credential
}

使用帐户名称/密钥的示例:

const account = "<account>";

const sharedKeyCredential = new StorageSharedKeyCredential(account, "<account key>");

const queueServiceClient = new QueueServiceClient(
  `https://${account}.queue.core.windows.net`,
  sharedKeyCredential,
  {
    retryOptions: { maxTries: 4 }, // Retry options
    telemetry: { value: "BasicSample/V11.0.0" } // Customized telemetry string
  }
);

继承属性详细信息

accountName

accountName: string

属性值

string

继承自 StorageClient.accountName

url

URL 字符串值。

url: string

属性值

string

继承自 StorageClient.url

方法详细信息

createQueue(string, QueueCreateOptions)

在指定的帐户下创建新队列。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/create-queue4

function createQueue(queueName: string, options?: QueueCreateOptions): Promise<QueueCreateResponse>

参数

queueName

string

要创建的队列的名称

options
QueueCreateOptions

队列创建操作的选项。

返回

队列创建操作的响应数据。

deleteQueue(string, QueueDeleteOptions)

永久删除指定的队列。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/delete-queue3

function deleteQueue(queueName: string, options?: QueueDeleteOptions): Promise<QueueDeleteResponse>

参数

queueName

string

要删除的队列的名称。

options
QueueDeleteOptions

队列删除操作的选项。

返回

队列删除操作的响应数据。

fromConnectionString(string, StoragePipelineOptions)

创建 QueueServiceClient 的实例。

static function fromConnectionString(connectionString: string, options?: StoragePipelineOptions): QueueServiceClient

参数

connectionString

string

帐户连接字符串或 Azure 存储帐户的 SAS 连接字符串。 [ 注意 - 帐户连接字符串只能在NODE.JS运行时使用。 ] 帐户连接字符串示例 - DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net SAS 连接字符串示例 - BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString

options
StoragePipelineOptions

用于配置 HTTP 管道的选项。

返回

给定连接字符串中的新 QueueServiceClient 对象。

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

仅适用于使用共享密钥凭据构造的 QueueServiceClient。

基于传入的客户端属性和参数生成帐户共享访问签名 (SAS) URI。 SAS 由客户端的共享密钥凭据签名。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas

function generateAccountSasUrl(expiresOn?: Date, permissions?: AccountSASPermissions, resourceTypes?: string, options?: ServiceGenerateAccountSasUrlOptions): string

参数

expiresOn

Date

自选。 共享访问签名失效的时间。 如果未指定,则默认为一小时后。

permissions
AccountSASPermissions

指定要与 SAS 关联的权限列表。

resourceTypes

string

指定与共享访问签名关联的资源类型。

options
ServiceGenerateAccountSasUrlOptions

可选参数。

返回

string

由此客户端表示的资源的 URI 组成的帐户 SAS URI,后跟生成的 SAS 令牌。

generateSasStringToSign(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

仅适用于使用共享密钥凭据构造的 QueueServiceClient。

根据传入的客户端属性和参数生成用于对帐户共享访问签名(SAS)URI 进行签名的字符串。 SAS 由客户端的共享密钥凭据签名。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas

function generateSasStringToSign(expiresOn?: Date, permissions?: AccountSASPermissions, resourceTypes?: string, options?: ServiceGenerateAccountSasUrlOptions): string

参数

expiresOn

Date

自选。 共享访问签名失效的时间。 如果未指定,则默认为一小时后。

permissions
AccountSASPermissions

指定要与 SAS 关联的权限列表。

resourceTypes

string

指定与共享访问签名关联的资源类型。

options
ServiceGenerateAccountSasUrlOptions

可选参数。

返回

string

由此客户端表示的资源的 URI 组成的帐户 SAS URI,后跟生成的 SAS 令牌。

getProperties(ServiceGetPropertiesOptions)

获取存储帐户的队列服务的属性,包括存储分析和 CORS(跨域资源共享)规则的属性。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/get-queue-service-properties

function getProperties(options?: ServiceGetPropertiesOptions): Promise<ServiceGetPropertiesResponse>

参数

options
ServiceGetPropertiesOptions

用于获取属性操作的选项。

返回

包括队列服务属性在内的响应数据。

getQueueClient(string)

创建 QueueClient 对象。

function getQueueClient(queueName: string): QueueClient

参数

queueName

string

返回

新的 QueueClient

示例用法:

const queueClient = queueServiceClient.getQueueClient("<new queue name>");
const createQueueResponse = await queueClient.create();

getStatistics(ServiceGetStatisticsOptions)

检索与队列服务的复制相关的统计信息。 仅当为存储帐户启用读取访问异地冗余复制时,它才可用于辅助位置终结点。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/get-queue-service-stats

function getStatistics(options?: ServiceGetStatisticsOptions): Promise<ServiceGetStatisticsResponse>

参数

options
ServiceGetStatisticsOptions

用于获取统计信息操作的选项。

返回

用于获取操作统计信息的响应数据。

listQueues(ServiceListQueuesOptions)

返回异步可迭代迭代器以列出指定帐户下的所有队列。

.byPage() 返回异步可迭代迭代迭代器以列出页面中的队列。

使用 for await 语法的示例:

let i = 1;
for await (const item of queueServiceClient.listQueues()) {
  console.log(`Queue${i}: ${item.name}`);
  i++;
}

使用 iter.next()的示例:

let i = 1;
let iterator = queueServiceClient.listQueues();
let item = await iterator.next();
while (!item.done) {
  console.log(`Queue${i}: ${item.value.name}`);
  i++;
  item = await iterator.next();
}

使用 byPage()的示例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const item2 of queueServiceClient.listQueues().byPage({ maxPageSize: 20 })) {
  if (item2.queueItems) {
    for (const queueItem of item2.queueItems) {
      console.log(`Queue${i}: ${queueItem.name}`);
      i++;
    }
  }
}

对标记使用分页的示例:

let i = 1;
let iterator = queueServiceClient.listQueues().byPage({ maxPageSize: 2 });
let item = (await iterator.next()).value;

// Prints 2 queue names
if (item.queueItems) {
  for (const queueItem of item.queueItems) {
    console.log(`Queue${i}: ${queueItem.name}`);
    i++;
  }
}
// Gets next marker
let marker = item.continuationToken;

// Passing next marker as continuationToken
iterator = queueServiceClient.listQueues().byPage({ continuationToken: marker, maxPageSize: 10 });
item = (await iterator.next()).value;

// Prints 10 queue names
if (item.queueItems) {
  for (const queueItem of item.queueItems) {
    console.log(`Queue${i}: ${queueItem.name}`);
    i++;
  }
}
function listQueues(options?: ServiceListQueuesOptions): PagedAsyncIterableIterator<QueueItem, ServiceListQueuesSegmentResponse, PageSettings>

参数

options
ServiceListQueuesOptions

列出队列操作的选项。

返回

支持分页的 asyncIterableIterator。

setProperties(QueueServiceProperties, ServiceGetPropertiesOptions)

设置存储帐户队列服务终结点的属性,包括存储分析、CORS(跨域资源共享)规则和软删除设置的属性。

请参见https://docs.microsoft.com/en-us/rest/api/storageservices/set-queue-service-properties

function setProperties(properties: QueueServiceProperties, options?: ServiceGetPropertiesOptions): Promise<ServiceSetPropertiesResponse>

参数

options
ServiceGetPropertiesOptions

用于设置属性操作的选项。

返回

设置属性操作的响应数据。