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

@azure/core-util package

接口

AbortOptions

与中止控制器相关的选项。

CreateAbortablePromiseOptions

createAbortablePromise 函数的选项。

DelayOptions

延迟方法支持中止功能的选项

类型别名

AbortablePromiseBuilder

表示返回可中止的承诺的函数。

EncodingType

支持的字符编码类型

HttpMethods

支持在发出请求时使用的 HTTP 方法。

UnknownObject

普通 JS 对象的通用形状。

函数

calculateRetryDelay(number, { maxRetryDelayInMs: number, retryDelayInMs: number })

使用带抖动的指数延迟计算重试尝试的延迟间隔。

cancelablePromiseRace<T>(AbortablePromiseBuilder<T[number]>[], { abortSignal?: AbortSignalLike })

promise.race() 包装器,一旦第一个承诺解决,就会中止剩余的承诺。

computeSha256Hash(string, "base64" | "hex")

生成 SHA-256 哈希。

computeSha256Hmac(string, string, "base64" | "hex")

生成 SHA-256 HMAC 签名。

createAbortablePromise<T>((resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void, CreateAbortablePromiseOptions)

创建可中止的承诺。

delay(number, DelayOptions)

setTimeout 的包装器,用于在 timeInMs 毫秒后解析承诺。

getErrorMessage(unknown)

如果认为错误对象是什么,请返回消息(如果可能)。 如果消息缺失,则返回输入的字符串化版本。

getRandomIntegerInclusive(number, number)

返回下限和上限之间的随机整数值,包括这两个边界。 请注意,这使用 Math.random,并且不安全。 如果需要将此用于任何类型的安全目的,请找到更好的随机来源。

isDefined<T>(undefined | null | T)

帮助程序 TypeGuard,用于检查是否定义了某些内容。

isError(unknown)

错误对象形状的 Typeguard (具有名称和消息)

isObject(unknown)

用于确定输入何时是通用 JS 对象的帮助程序。

isObjectWithProperties<Thing, PropertyName>(Thing, PropertyName[])

帮助程序 TypeGuard,用于检查输入是否为具有指定属性的对象。

objectHasProperty<Thing, PropertyName>(Thing, PropertyName)

帮助程序 TypeGuard,用于检查输入是否为具有指定属性的对象。

randomUUID()

生成的通用唯一标识符

stringToUint8Array(string, EncodingType)

将字符串转换为特定字符编码字节数组的帮助程序。

uint8ArrayToString(Uint8Array, EncodingType)

将具有特定字符编码的字节转换为字符串的帮助程序

变量

isBrowser

一个常量表示代码运行的环境是否是网页浏览器。

isBun

一个常量表示代码运行的环境是否 Bun.sh。

isDeno

一个表示代码是否运行环境的常数是Deno。

isNode

一个常量,表示代码运行的环境是否为 Node.js 兼容环境。

isNodeLike

一个常量,表示代码运行的环境是否为 Node.js 兼容环境。

isNodeRuntime

一个常量表示代码运行的环境是否为Node.JS。

isReactNative

一个常量表示代码运行的环境是否在 React-Native 中。

isWebWorker

一个常量,用于指示代码运行的环境是否是 Web Worker。

函数详细信息

calculateRetryDelay(number, { maxRetryDelayInMs: number, retryDelayInMs: number })

使用带抖动的指数延迟计算重试尝试的延迟间隔。

function calculateRetryDelay(retryAttempt: number, config: { maxRetryDelayInMs: number, retryDelayInMs: number }): { retryAfterInMs: number }

参数

retryAttempt

number

当前重试尝试次数。

config

{ maxRetryDelayInMs: number, retryDelayInMs: number }

指数重试配置。

返回

{ retryAfterInMs: number }

包含计算的重试延迟的对象。

cancelablePromiseRace<T>(AbortablePromiseBuilder<T[number]>[], { abortSignal?: AbortSignalLike })

promise.race() 包装器,一旦第一个承诺解决,就会中止剩余的承诺。

function cancelablePromiseRace<T>(abortablePromiseBuilders: AbortablePromiseBuilder<T[number]>[], options?: { abortSignal?: AbortSignalLike }): Promise<T[number]>

参数

abortablePromiseBuilders

AbortablePromiseBuilder<T[number]>[]

options

{ abortSignal?: AbortSignalLike }

返回

Promise<T[number]>

computeSha256Hash(string, "base64" | "hex")

生成 SHA-256 哈希。

function computeSha256Hash(content: string, encoding: "base64" | "hex"): Promise<string>

参数

content

string

要包含在哈希中的数据。

encoding

"base64" | "hex"

要用于返回哈希的文本编码。

返回

Promise<string>

computeSha256Hmac(string, string, "base64" | "hex")

生成 SHA-256 HMAC 签名。

function computeSha256Hmac(key: string, stringToSign: string, encoding: "base64" | "hex"): Promise<string>

参数

key

string

表示为 base64 字符串的 HMAC 密钥,用于生成加密 HMAC 哈希。

stringToSign

string

要签名的数据。

encoding

"base64" | "hex"

要用于返回的 HMAC 摘要的文本编码。

返回

Promise<string>

createAbortablePromise<T>((resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void, CreateAbortablePromiseOptions)

创建可中止的承诺。

function createAbortablePromise<T>(buildPromise: (resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void, options?: CreateAbortablePromiseOptions): Promise<T>

参数

buildPromise

(resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void

一个将解析和拒绝函数作为参数的函数。

options
CreateAbortablePromiseOptions

可中止承诺的选项。

返回

Promise<T>

可以中止的承诺。

delay(number, DelayOptions)

setTimeout 的包装器,用于在 timeInMs 毫秒后解析承诺。

function delay(timeInMs: number, options?: DelayOptions): Promise<void>

参数

timeInMs

number

要延迟的毫秒数。

options
DelayOptions

延迟选项 - 当前中止选项

返回

Promise<void>

在 timeInMs 后解决的承诺

getErrorMessage(unknown)

如果认为错误对象是什么,请返回消息(如果可能)。 如果消息缺失,则返回输入的字符串化版本。

function getErrorMessage(e: unknown): string

参数

e

unknown

从 try 块引发的内容

返回

string

输入的错误消息或字符串

getRandomIntegerInclusive(number, number)

返回下限和上限之间的随机整数值,包括这两个边界。 请注意,这使用 Math.random,并且不安全。 如果需要将此用于任何类型的安全目的,请找到更好的随机来源。

function getRandomIntegerInclusive(min: number, max: number): number

参数

min

number

允许的最小整数值。

max

number

允许的最大整数值。

返回

number

isDefined<T>(undefined | null | T)

帮助程序 TypeGuard,用于检查是否定义了某些内容。

function isDefined<T>(thing: undefined | null | T): thing

参数

thing

undefined | null | T

什么

返回

thing

isError(unknown)

错误对象形状的 Typeguard (具有名称和消息)

function isError(e: unknown): e

参数

e

unknown

catch 子句捕获的内容。

返回

e

isObject(unknown)

用于确定输入何时是通用 JS 对象的帮助程序。

function isObject(input: unknown): input

参数

input

unknown

返回

input

如果输入不是 null、Array、RegExp 或 Date 的对象类型,则为 true。

isObjectWithProperties<Thing, PropertyName>(Thing, PropertyName[])

帮助程序 TypeGuard,用于检查输入是否为具有指定属性的对象。

function isObjectWithProperties<Thing, PropertyName>(thing: Thing, properties: PropertyName[]): thing

参数

thing

Thing

什么。

properties

PropertyName[]

应出现在对象中的属性的名称。

返回

thing

objectHasProperty<Thing, PropertyName>(Thing, PropertyName)

帮助程序 TypeGuard,用于检查输入是否为具有指定属性的对象。

function objectHasProperty<Thing, PropertyName>(thing: Thing, property: PropertyName): thing

参数

thing

Thing

任何对象。

property

PropertyName

应在对象中显示的属性的名称。

返回

thing

randomUUID()

生成的通用唯一标识符

function randomUUID(): string

返回

string

RFC4122 v4 UUID。

stringToUint8Array(string, EncodingType)

将字符串转换为特定字符编码字节数组的帮助程序。

function stringToUint8Array(value: string, format: EncodingType): Uint8Array

参数

value

string

要转换的字符串

format
EncodingType

用于解码值的格式

返回

Uint8Array

uint8array

uint8ArrayToString(Uint8Array, EncodingType)

将具有特定字符编码的字节转换为字符串的帮助程序

function uint8ArrayToString(bytes: Uint8Array, format: EncodingType): string

参数

bytes

Uint8Array

uint8array 字节

format
EncodingType

用于对字节进行编码的格式

返回

string

编码字符串的字符串

Variable Details

isBrowser

一个常量表示代码运行的环境是否是网页浏览器。

isBrowser: boolean

类型

boolean

isBun

一个常量表示代码运行的环境是否 Bun.sh。

isBun: boolean

类型

boolean

isDeno

一个表示代码是否运行环境的常数是Deno。

isDeno: boolean

类型

boolean

isNode

警告

现已弃用此 API。

Use isNodeLike instead.

一个常量,表示代码运行的环境是否为 Node.js 兼容环境。

isNode: boolean

类型

boolean

isNodeLike

一个常量,表示代码运行的环境是否为 Node.js 兼容环境。

isNodeLike: boolean

类型

boolean

isNodeRuntime

一个常量表示代码运行的环境是否为Node.JS。

isNodeRuntime: boolean

类型

boolean

isReactNative

一个常量表示代码运行的环境是否在 React-Native 中。

isReactNative: boolean

类型

boolean

isWebWorker

一个常量,用于指示代码运行的环境是否是 Web Worker。

isWebWorker: boolean

类型

boolean