你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
@azure/core-rest-pipeline package
类
RestError |
失败管道请求的自定义错误类型。 |
接口
AddPipelineOptions |
将策略添加到管道时的选项。 用于表达对其他策略的依赖项。 |
Agent |
与 NodeJS 的 |
AuthorizeRequestOnChallengeOptions |
发送到 authorizeRequestOnChallenge 回调的选项 |
AuthorizeRequestOptions |
发送到 authorizeRequest 回调的选项 |
AuxiliaryAuthenticationHeaderPolicyOptions |
用于配置 auxiliaryAuthenticationHeaderPolicy 的选项 |
BearerTokenAuthenticationPolicyOptions |
配置 bearerTokenAuthenticationPolicy 的选项 |
BodyPart |
多部分请求中的请求正文的一部分。 |
ChallengeCallbacks |
用于替代 持续访问评估 挑战处理的选项。 |
CreateFileFromStreamOptions |
传入流时,createFile 的额外选项。 |
CreateFileOptions |
传递给 createFile 的选项,用于指定有关文件的元数据。 |
DefaultRetryPolicyOptions |
控制如何重试失败请求的选项。 |
ExponentialRetryPolicyOptions |
控制如何重试失败请求的选项。 |
HttpClient |
代表管道发出 HTTP 请求的客户端所需的接口。 |
HttpHeaders |
表示请求/响应上的一组 HTTP 标头。 标头名称被视为不区分大小写。 |
InternalPipelineOptions |
定义用于为 SDK 客户端配置 HTTP 管道的内部选项的选项。 |
KeyObject |
与 NodeJS 的 |
LogPolicyOptions |
用于配置 logPolicy 的选项。 |
MultipartRequestBody |
包含多个部分的请求正文。 |
Pipeline |
表示向 URL 发出 HTTP 请求的管道。 管道可以有多个策略来管理对服务器之前和之后每个请求的作。 |
PipelineOptions |
定义用于为 SDK 客户端配置 HTTP 管道的选项。 |
PipelinePolicy |
管道策略在流经管道时作请求。 从概念上讲,它是一个中间件,允许在收到请求之前修改请求以及响应。 |
PipelineRequest |
有关管道发出的请求的元数据。 |
PipelineRequestOptions |
用于初始化请求的设置。 几乎等效于 Partial,但 URL 是必需的。 |
PipelineResponse |
有关管道收到的响应的元数据。 |
PipelineRetryOptions |
控制如何重试失败请求的选项。 |
ProxySettings |
为传出请求配置代理的选项(仅Node.js)。 |
PxfObject |
与 NodeJS 的 |
RedirectPolicyOptions |
有关如何处理重定向响应的选项。 |
RestErrorOptions |
RestError 支持的选项。 |
RetryInformation |
提供给有关重试策略当前进度的重试策略的信息。 |
RetryModifiers |
可以修改重试策略行为的属性。 |
RetryPolicyOptions |
retryPolicy 的选项 |
RetryStrategy |
重试策略旨在定义是否重试,以及如何重试。 |
SystemErrorRetryPolicyOptions |
控制如何重试失败请求的选项。 |
TelemetryOptions |
定义用于配置常见遥测和跟踪信息的选项 |
ThrottlingRetryPolicyOptions |
控制如何重试失败请求的选项。 |
TlsSettings |
表示 TLS 身份验证的证书。 |
TracingPolicyOptions |
用于配置跟踪策略的选项。 |
UserAgentPolicyOptions |
用于将用户代理详细信息添加到传出请求的选项。 |
类型别名
FormDataMap |
提供表单数据的简单对象,就像从浏览器窗体中一样。 |
FormDataValue |
每个表单数据条目可以是字符串、Blob 或文件。 如果要传递具有名称但无权访问 File 类的文件,可以使用 createFile 帮助程序创建一个文件。 |
HttpMethods |
支持在发出请求时使用的 HTTP 方法。 |
PipelinePhase |
策略分阶段执行。 执行顺序为:
|
RawHttpHeaders |
表示为简单 JSON 对象的 HttpHeaders 集合。 |
RawHttpHeadersInput |
用于输入的 HttpHeaders 集合,表示为简单的 JSON 对象。 |
RequestBodyType |
请求支持的类型。 NodeJS.ReadableStream 和 () => NodeJS.ReadableStream 仅是 Node。 Blob、ReadableStream 和 () => ReadableStream 仅浏览器。 |
SendRequest |
用于发出管道请求和接收响应的简单接口。 |
TransferProgressEvent |
响应上传或下载进度而触发。 |
函数
agent |
获取设置 http.agent 的管道策略 |
auxiliary |
用于 |
bearer |
一个策略,可以从 TokenCredential 实现请求令牌,然后将其作为持有者令牌应用于请求的授权标头。 |
create |
为当前环境创建正确的 HttpClient。 |
create |
创建完全空的管道。 可用于测试或创建自定义模板。 |
create |
创建实现文件接口的对象。 此对象旨在传递到 RequestBodyType.formData 中,并不能保证在其他情况下按预期工作。 使用此函数创建一个 File 对象,以便在全局 File 对象不可用的环境中在 RequestBodyType.formData 中使用。 |
create |
创建实现文件接口的对象。 此对象旨在传递到 RequestBodyType.formData 中,并不能保证在其他情况下按预期工作。 使用此函数可以:
|
create |
创建满足 |
create |
使用一组默认的可自定义策略创建新管道。 |
create |
使用给定选项创建新的管道请求。 此方法允许轻松设置默认值,而不需要设置默认值。 |
decompress |
根据 Accept-Encoding 标头 https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding 启用响应解压缩的策略 |
default |
根据三种策略重试的策略:
|
exponential |
尝试重试请求的策略,同时引入呈指数增加的延迟。 |
form |
将请求上的 FormData 编码为正文的策略。 |
get |
此方法将代理 URL 转换为 |
is |
RestError 的 Typeguard |
log |
记录所有请求和响应的策略。 |
multipart |
多部分请求的管道策略 |
nd |
ndJsonPolicy 是用于控制每个请求的保持活动设置的策略。 |
proxy |
允许将代理设置应用于所有请求的策略。 如果未传递静态设置,将从HTTPS_PROXY或HTTP_PROXY环境变量中检索它们。 |
redirect |
一个策略,用于遵循来自服务器的 Location 标头以支持服务器端重定向。 在浏览器中,不使用此策略。 |
retry |
retryPolicy 是一种通用策略,用于在满足某些条件时启用重试请求 |
set |
每个 PipelineRequest 在创建时获取唯一 ID。 此策略通过 HTTP 标头传递该唯一 ID,以实现更好的遥测和跟踪。 |
system |
一个重试策略,该策略专门试图处理基础传输层(例如 DNS 查找失败)中的错误,而不是服务器本身的可重试错误代码。 |
throttling |
当服务器发送具有 Retry-After 标头的 429 响应时重试的策略。 若要了解详细信息,请参阅 https://learn.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-request-limits、https://learn.microsoft.com/en-us/azure/azure-subscription-service-limits 和 https://learn.microsoft.com/en-us/azure/virtual-machines/troubleshooting/troubleshooting-throttling-errors |
tls |
获取将客户端证书添加到 HttpClient 代理以进行身份验证的管道策略。 |
tracing |
为具有 SpanOptions 且具有父级的管道发出的每个请求创建 OpenTelemetry Spans 的简单策略。 不会记录在没有父 Span 的情况下发出的请求。 |
user |
设置 User-Agent 标头(或等效)以反映库版本的策略。 |
函数详细信息
agentPolicy(Agent)
auxiliaryAuthenticationHeaderPolicy(AuxiliaryAuthenticationHeaderPolicyOptions)
用于 x-ms-authorization-auxiliary
标头的外部令牌的策略。
创建跨租户应用程序时,可能需要处理针对不同租户中的资源的身份验证请求时,将使用此标头。
可以看到 ARM 文档,了解此功能的工作原理
function auxiliaryAuthenticationHeaderPolicy(options: AuxiliaryAuthenticationHeaderPolicyOptions): PipelinePolicy
参数
返回
bearerTokenAuthenticationPolicy(BearerTokenAuthenticationPolicyOptions)
一个策略,可以从 TokenCredential 实现请求令牌,然后将其作为持有者令牌应用于请求的授权标头。
function bearerTokenAuthenticationPolicy(options: BearerTokenAuthenticationPolicyOptions): PipelinePolicy
参数
返回
createDefaultHttpClient()
createEmptyPipeline()
createFile(Uint8Array, string, CreateFileOptions)
创建实现文件接口的对象。 此对象旨在传递到 RequestBodyType.formData 中,并不能保证在其他情况下按预期工作。
使用此函数创建一个 File 对象,以便在全局 File 对象不可用的环境中在 RequestBodyType.formData 中使用。
function createFile(content: Uint8Array, name: string, options?: CreateFileOptions): File
参数
- content
-
Uint8Array
文件的内容作为内存中的 Uint8Array。
- name
-
string
文件的名称。
- options
- CreateFileOptions
有关文件的可选元数据,例如文件名、文件大小、MIME 类型。
返回
File
createFileFromStream(() => ReadableStream<Uint8Array> | ReadableStream, string, CreateFileFromStreamOptions)
创建实现文件接口的对象。 此对象旨在传递到 RequestBodyType.formData 中,并不能保证在其他情况下按预期工作。
使用此函数可以:
- 创建一个 File 对象,以便在全局 File 对象不可用的环境中在 RequestBodyType.formData 中使用。
- 从可读流创建类似 File 的对象,而无需将流读取到内存中。
function createFileFromStream(stream: () => ReadableStream<Uint8Array> | ReadableStream, name: string, options?: CreateFileFromStreamOptions): File
参数
- stream
-
() => ReadableStream<Uint8Array> | ReadableStream
作为返回流的回调的文件内容。 使用 createFile 创建的 File 对象在请求的表单数据映射中传递时,流将不会读入内存,而是在发出请求时流式传输。 如果重试,需要再次读取流,因此此回调应返回新的流(如果可能)。
- name
-
string
文件的名称。
- options
- CreateFileFromStreamOptions
有关文件的可选元数据,例如文件名、文件大小、MIME 类型。
返回
File
createHttpHeaders(RawHttpHeadersInput)
创建满足 HttpHeaders
接口的对象。
function createHttpHeaders(rawHeaders?: RawHttpHeadersInput): HttpHeaders
参数
- rawHeaders
- RawHttpHeadersInput
表示初始标头的简单对象
返回
createPipelineFromOptions(InternalPipelineOptions)
使用一组默认的可自定义策略创建新管道。
function createPipelineFromOptions(options: InternalPipelineOptions): Pipeline
参数
- options
- InternalPipelineOptions
用于配置自定义管道的选项。
返回
createPipelineRequest(PipelineRequestOptions)
使用给定选项创建新的管道请求。 此方法允许轻松设置默认值,而不需要设置默认值。
function createPipelineRequest(options: PipelineRequestOptions): PipelineRequest
参数
- options
- PipelineRequestOptions
用于创建请求的选项。
返回
decompressResponsePolicy()
根据 Accept-Encoding 标头 https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding 启用响应解压缩的策略
function decompressResponsePolicy(): PipelinePolicy
返回
defaultRetryPolicy(DefaultRetryPolicyOptions)
根据三种策略重试的策略:
- 当服务器发送具有 Retry-After 标头的 429 响应时。
- 当基础传输层(例如 DNS 查找失败)中出现错误时。
- 否则,如果传出请求失败,它将重试,延迟呈指数级增加。
function defaultRetryPolicy(options?: DefaultRetryPolicyOptions): PipelinePolicy
参数
- options
- DefaultRetryPolicyOptions
返回
exponentialRetryPolicy(ExponentialRetryPolicyOptions)
尝试重试请求的策略,同时引入呈指数增加的延迟。
function exponentialRetryPolicy(options?: ExponentialRetryPolicyOptions): PipelinePolicy
参数
- options
- ExponentialRetryPolicyOptions
配置重试逻辑的选项。
返回
formDataPolicy()
getDefaultProxySettings(string)
警告
现已弃用此 API。
- Internally this method is no longer necessary when setting proxy information.
此方法将代理 URL 转换为 ProxySettings
,以便与 ProxyPolicy 一起使用。
如果未提供任何参数,它将尝试分析环境变量 HTTPS_PROXY
或 HTTP_PROXY
中的代理 URL。
function getDefaultProxySettings(proxyUrl?: string): ProxySettings | undefined
参数
- proxyUrl
-
string
要使用的代理的 URL。 可能包含身份验证信息。
返回
ProxySettings | undefined
isRestError(unknown)
RestError 的 Typeguard
function isRestError(e: unknown): e
参数
- e
-
unknown
catch 子句捕获的内容。
返回
e
logPolicy(LogPolicyOptions)
记录所有请求和响应的策略。
function logPolicy(options?: LogPolicyOptions): PipelinePolicy
参数
- options
- LogPolicyOptions
用于配置 logPolicy 的选项。
返回
multipartPolicy()
ndJsonPolicy()
proxyPolicy(ProxySettings, { customNoProxyList?: string[] })
允许将代理设置应用于所有请求的策略。 如果未传递静态设置,将从HTTPS_PROXY或HTTP_PROXY环境变量中检索它们。
function proxyPolicy(proxySettings?: ProxySettings, options?: { customNoProxyList?: string[] }): PipelinePolicy
参数
- proxySettings
- ProxySettings
要在每个请求上使用的 ProxySettings。
- options
-
{ customNoProxyList?: string[] }
其他设置,例如自定义NO_PROXY模式
返回
redirectPolicy(RedirectPolicyOptions)
一个策略,用于遵循来自服务器的 Location 标头以支持服务器端重定向。 在浏览器中,不使用此策略。
function redirectPolicy(options?: RedirectPolicyOptions): PipelinePolicy
参数
- options
- RedirectPolicyOptions
用于控制策略行为的选项。
返回
retryPolicy(RetryStrategy[], RetryPolicyOptions)
retryPolicy 是一种通用策略,用于在满足某些条件时启用重试请求
function retryPolicy(strategies: RetryStrategy[], options?: RetryPolicyOptions): PipelinePolicy
参数
- strategies
- options
- RetryPolicyOptions
返回
setClientRequestIdPolicy(string)
每个 PipelineRequest 在创建时获取唯一 ID。 此策略通过 HTTP 标头传递该唯一 ID,以实现更好的遥测和跟踪。
function setClientRequestIdPolicy(requestIdHeaderName?: string): PipelinePolicy
参数
- requestIdHeaderName
-
string
要向其传递请求 ID 的标头的名称。
返回
systemErrorRetryPolicy(SystemErrorRetryPolicyOptions)
一个重试策略,该策略专门试图处理基础传输层(例如 DNS 查找失败)中的错误,而不是服务器本身的可重试错误代码。
function systemErrorRetryPolicy(options?: SystemErrorRetryPolicyOptions): PipelinePolicy
参数
- options
- SystemErrorRetryPolicyOptions
自定义策略的选项。
返回
throttlingRetryPolicy(ThrottlingRetryPolicyOptions)
当服务器发送具有 Retry-After 标头的 429 响应时重试的策略。
若要了解详细信息,请参阅 https://learn.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-request-limits、https://learn.microsoft.com/en-us/azure/azure-subscription-service-limits 和 https://learn.microsoft.com/en-us/azure/virtual-machines/troubleshooting/troubleshooting-throttling-errors
function throttlingRetryPolicy(options?: ThrottlingRetryPolicyOptions): PipelinePolicy
参数
- options
- ThrottlingRetryPolicyOptions
配置重试逻辑的选项。
返回
tlsPolicy(TlsSettings)
获取将客户端证书添加到 HttpClient 代理以进行身份验证的管道策略。
function tlsPolicy(tlsSettings?: TlsSettings): PipelinePolicy
参数
- tlsSettings
- TlsSettings
返回
tracingPolicy(TracingPolicyOptions)
为具有 SpanOptions 且具有父级的管道发出的每个请求创建 OpenTelemetry Spans 的简单策略。 不会记录在没有父 Span 的情况下发出的请求。
function tracingPolicy(options?: TracingPolicyOptions): PipelinePolicy
参数
- options
- TracingPolicyOptions
用于配置跟踪策略记录的遥测的选项。
返回
userAgentPolicy(UserAgentPolicyOptions)
设置 User-Agent 标头(或等效)以反映库版本的策略。
function userAgentPolicy(options?: UserAgentPolicyOptions): PipelinePolicy
参数
- options
- UserAgentPolicyOptions
自定义用户代理值的选项。