你当前正在访问 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

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,则可以追加 SAS,例如“https://myaccount.queue.core.windows.net?sasString"”。

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,则可以追加 SAS,例如“https://myaccount.queue.core.windows.net?sasString"”。

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

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

options
StoragePipelineOptions

用于配置 HTTP 管道的选项。

使用 DefaultAzureCredential 的示例:@azure/identity

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

可选。 共享访问签名变为无效的时间。 如果未指定,则默认为 1 小时后。

permissions
AccountSASPermissions

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

resourceTypes

string

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

options
ServiceGenerateAccountSasUrlOptions

可选参数。

返回

string

帐户 SAS URI 由此客户端表示的资源的 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

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

返回

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