@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 |
為傳出要求設定 Proxy 的選項(僅限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 |
建立實作 File 介面的物件。 此物件是要傳遞至 RequestBodyType.formData,而且不保證在其他情況下如預期般運作。 使用此函式建立 File 物件,以在全域 File 對象無法使用的環境中,在 RequestBodyType.formData 中使用。 |
create |
建立實作 File 介面的物件。 此物件是要傳遞至 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 |
此方法會將 Proxy URL 轉換成 |
is |
RestError 的 Typeguard |
log |
記錄所有要求和響應的原則。 |
multipart |
多部分要求的管線原則 |
nd |
ndJsonPolicy 是用來控制每個要求保持運作設定的原則。 |
proxy |
允許將 Proxy 設定套用至所有要求的原則。 如果未傳遞靜態設定,則會從HTTPS_PROXY或HTTP_PROXY環境變數擷取它們。 |
redirect |
要遵循伺服器位置標頭的原則,以支援伺服器端重新導向。 在瀏覽器中,不會使用此原則。 |
retry |
retryPolicy 是一般原則,可讓您在符合特定條件時啟用重試要求 |
set |
每個 PipelineRequest 在建立時都會取得唯一標識碼。 此原則會透過 HTTP 標頭傳遞該唯一標識碼,以啟用更好的遙測和追蹤。 |
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 建立 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)
建立實作 File 介面的物件。 此物件是要傳遞至 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)
建立實作 File 介面的物件。 此物件是要傳遞至 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.
此方法會將 Proxy URL 轉換成 ProxySettings
,以搭配 ProxyPolicy 使用。
如果未指定自變數,它會嘗試從環境變數剖析 proxy URL HTTPS_PROXY
或 HTTP_PROXY
。
function getDefaultProxySettings(proxyUrl?: string): ProxySettings | undefined
參數
- proxyUrl
-
string
要使用的 Proxy 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[] })
允許將 Proxy 設定套用至所有要求的原則。 如果未傳遞靜態設定,則會從HTTPS_PROXY或HTTP_PROXY環境變數擷取它們。
function proxyPolicy(proxySettings?: ProxySettings, options?: { customNoProxyList?: string[] }): PipelinePolicy
參數
- proxySettings
- ProxySettings
要用於每個要求的 ProxySettings。
- options
-
{ customNoProxyList?: string[] }
其他設定,例如自定義NO_PROXY模式
傳回
redirectPolicy(RedirectPolicyOptions)
要遵循伺服器位置標頭的原則,以支援伺服器端重新導向。 在瀏覽器中,不會使用此原則。
function redirectPolicy(options?: RedirectPolicyOptions): PipelinePolicy
參數
- options
- RedirectPolicyOptions
控制原則行為的選項。
傳回
retryPolicy(RetryStrategy[], RetryPolicyOptions)
retryPolicy 是一般原則,可讓您在符合特定條件時啟用重試要求
function retryPolicy(strategies: RetryStrategy[], options?: RetryPolicyOptions): PipelinePolicy
參數
- strategies
- options
- RetryPolicyOptions
傳回
setClientRequestIdPolicy(string)
每個 PipelineRequest 在建立時都會取得唯一標識碼。 此原則會透過 HTTP 標頭傳遞該唯一標識碼,以啟用更好的遙測和追蹤。
function setClientRequestIdPolicy(requestIdHeaderName?: string): PipelinePolicy
參數
- requestIdHeaderName
-
string
要傳遞要求標識碼的標頭名稱。
傳回
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 建立 OpenTelemetry Spans 的簡單原則。 不會記錄沒有父 Span 的要求。
function tracingPolicy(options?: TracingPolicyOptions): PipelinePolicy
參數
- options
- TracingPolicyOptions
設定追蹤原則所記錄遙測的選項。
傳回
userAgentPolicy(UserAgentPolicyOptions)
設定 User-Agent 標頭(或對等專案)以反映連結庫版本的原則。
function userAgentPolicy(options?: UserAgentPolicyOptions): PipelinePolicy
參數
- options
- UserAgentPolicyOptions
自訂使用者代理程式值的選項。