Partager via


@azure/core-rest-pipeline package

Classes

RestError

Type d’erreur personnalisé pour les demandes de pipeline ayant échoué.

Interfaces

AddPipelineOptions

Options lors de l’ajout d’une stratégie au pipeline. Utilisé pour exprimer des dépendances sur d’autres stratégies.

Agent

Interface compatible avec les http.Agentde NodeJS. Nous voulons éviter de réexporter publiquement l’interface réelle, car elle peut varier entre les versions du runtime.

AuthorizeRequestOnChallengeOptions

Options envoyées au rappel authorizeRequestOnChallenge

AuthorizeRequestOptions

Options envoyées au rappel authorizeRequest

AuxiliaryAuthenticationHeaderPolicyOptions

Options pour configurer l’auxiliaireAuthenticationHeaderPolicy

BearerTokenAuthenticationPolicyOptions

Options pour configurer bearerTokenAuthenticationPolicy

BodyPart

Partie du corps de la requête dans une requête multipart.

ChallengeCallbacks

Options permettant de remplacer le traitement de défis liés à l’évaluation de l’accès continu.

CreateFileFromStreamOptions

Options supplémentaires pour createFile lorsqu’un flux est transmis.

CreateFileOptions

Options passées dans createFile spécifiant des métadonnées sur le fichier.

DefaultRetryPolicyOptions

Options qui contrôlent la façon de réessayer les demandes ayant échoué.

ExponentialRetryPolicyOptions

Options qui contrôlent la façon de réessayer les demandes ayant échoué.

HttpClient

Interface requise pour un client qui effectue des requêtes HTTP pour le compte d’un pipeline.

HttpHeaders

Représente un ensemble d’en-têtes HTTP sur une requête/réponse. Les noms d’en-tête sont traités comme respectant la casse.

InternalPipelineOptions

Définit les options utilisées pour configurer les options internes du pipeline HTTP pour un client sdk.

KeyObject

Interface compatible avec les tls.KeyObjectde NodeJS. Nous voulons éviter de réexporter publiquement l’interface réelle, car elle peut varier entre les versions du runtime.

LogPolicyOptions

Options de configuration de logPolicy.

MultipartRequestBody

Corps de la demande composé de plusieurs parties.

Pipeline

Représente un pipeline pour effectuer une requête HTTP vers une URL. Les pipelines peuvent avoir plusieurs stratégies pour gérer la manipulation de chaque requête avant et après sa création sur le serveur.

PipelineOptions

Définit les options utilisées pour configurer le pipeline HTTP pour un client sdk.

PipelinePolicy

Une stratégie de pipeline manipule une requête au fur et à mesure qu’elle transite par le pipeline. Il s’agit d’un intergiciel qui est autorisé à modifier la requête avant qu’elle ne soit effectuée, ainsi que la réponse lorsqu’elle est reçue.

PipelineRequest

Métadonnées relatives à une requête effectuée par le pipeline.

PipelineRequestOptions

Paramètres d’initialisation d’une requête. Presque équivalent à Partial, mais l’URL est obligatoire.

PipelineResponse

Métadonnées relatives à une réponse reçue par le pipeline.

PipelineRetryOptions

Options qui contrôlent la façon de réessayer les demandes ayant échoué.

ProxySettings

Options de configuration d’un proxy pour les requêtes sortantes (Node.js uniquement).

PxfObject

Interface compatible avec les tls.PxfObjectde NodeJS. Nous voulons éviter de réexporter publiquement l’interface réelle, car elle peut varier entre les versions du runtime.

RedirectPolicyOptions

Options de gestion des réponses de redirection.

RestErrorOptions

Options prises en charge par RestError.

RetryInformation

Informations fournies à la stratégie de nouvelle tentative concernant la progression actuelle de la stratégie de nouvelle tentative.

RetryModifiers

Propriétés qui peuvent modifier le comportement de la stratégie de nouvelle tentative.

RetryPolicyOptions

Options de la retryPolicy

RetryStrategy

Une stratégie de nouvelle tentative est destinée à définir s’il faut réessayer ou non et comment réessayer.

SystemErrorRetryPolicyOptions

Options qui contrôlent la façon de réessayer les demandes ayant échoué.

TelemetryOptions

Définit les options utilisées pour configurer les informations de télémétrie et de suivi courantes

ThrottlingRetryPolicyOptions

Options qui contrôlent la façon de réessayer les demandes ayant échoué.

TlsSettings

Représente un certificat pour l’authentification TLS.

TracingPolicyOptions

Options de configuration de la stratégie de suivi.

UserAgentPolicyOptions

Options d’ajout de détails de l’agent utilisateur aux demandes sortantes.

Alias de type

FormDataMap

Objet simple qui fournit des données de formulaire, comme s’il s’agit d’un formulaire de navigateur.

FormDataValue

Chaque entrée de données de formulaire peut être une chaîne, un objet blob ou un fichier. Si vous souhaitez transmettre un fichier portant un nom, mais que vous n’avez pas accès à la classe File, vous pouvez utiliser l’assistance createFile pour en créer un.

HttpMethods

Méthodes HTTP prises en charge à utiliser lors de l’établissement de requêtes.

PipelinePhase

Les stratégies sont exécutées en phases. L’ordre d’exécution est le suivant :

  1. Sérialiser la phase
  2. Stratégies non en phase
  3. Désérialiser la phase
  4. Phase de nouvelle tentative
  5. Phase de signe
RawHttpHeaders

Collection HttpHeaders représentée en tant qu’objet JSON simple.

RawHttpHeadersInput

Collection HttpHeaders pour l’entrée, représentée en tant qu’objet JSON simple.

RequestBodyType

Types de corps pris en charge sur la demande. NodeJS.ReadableStream et () => NodeJS.ReadableStream est Node uniquement. Blob, ReadableStream et () => ReadableStream sont uniquement navigateur.

SendRequest

Interface simple pour effectuer une demande de pipeline et recevoir une réponse.

TransferProgressEvent

Déclenché en réponse à la progression du chargement ou du téléchargement.

Functions

agentPolicy(Agent)

Obtient une stratégie de pipeline qui définit http.agent

auxiliaryAuthenticationHeaderPolicy(AuxiliaryAuthenticationHeaderPolicyOptions)

Stratégie pour les jetons externes pour x-ms-authorization-auxiliary en-tête. Cet en-tête sera utilisé lors de la création d’une application interlocataire, nous devrons peut-être gérer les demandes d’authentification pour les ressources qui se trouvent dans différents locataires. Vous pouvez voir documentation ARM pour une exécution de la façon dont cette fonctionnalité fonctionne

bearerTokenAuthenticationPolicy(BearerTokenAuthenticationPolicyOptions)

Stratégie qui peut demander un jeton à partir d’une implémentation TokenCredential, puis l’appliquer à l’en-tête d’autorisation d’une requête en tant que jeton du porteur.

createDefaultHttpClient()

Créez le httpClient correct pour l’environnement actuel.

createEmptyPipeline()

Crée un pipeline totalement vide. Utile pour tester ou créer un modèle personnalisé.

createFile(Uint8Array, string, CreateFileOptions)

Créez un objet qui implémente l’interface File. Cet objet est destiné à être transmis dans RequestBodyType.formData et n’est pas garanti pour fonctionner comme prévu dans d’autres situations.

Utilisez cette fonction pour créer un objet File à utiliser dans RequestBodyType.formData dans les environnements où l’objet Fichier global n’est pas disponible.

createFileFromStream(() => ReadableStream<Uint8Array> | ReadableStream, string, CreateFileFromStreamOptions)

Créez un objet qui implémente l’interface File. Cet objet est destiné à être transmis dans RequestBodyType.formData et n’est pas garanti pour fonctionner comme prévu dans d’autres situations.

Utilisez cette fonction pour :

  • Créez un objet File à utiliser dans RequestBodyType.formData dans les environnements où l’objet Fichier global n’est pas disponible.
  • Créez un objet de type Fichier à partir d’un flux lisible sans lire le flux en mémoire.
createHttpHeaders(RawHttpHeadersInput)

Crée un objet qui satisfait à l’interface HttpHeaders.

createPipelineFromOptions(InternalPipelineOptions)

Créez un pipeline avec un ensemble par défaut de stratégies personnalisables.

createPipelineRequest(PipelineRequestOptions)

Crée une demande de pipeline avec les options données. Cette méthode permet de définir facilement les valeurs par défaut et non obligatoires.

decompressResponsePolicy()

Stratégie permettant d’activer la décompression de la réponse en fonction de Accept-Encoding en-tête https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding

defaultRetryPolicy(DefaultRetryPolicyOptions)

Stratégie qui retente en fonction de trois stratégies :

  • Lorsque le serveur envoie une réponse 429 avec un en-tête Retry-After.
  • En cas d’erreurs dans la couche de transport sous-jacente (par exemple, les échecs de recherche DNS).
  • Sinon, si la demande sortante échoue, elle réessaye avec un délai croissant exponentiel.
exponentialRetryPolicy(ExponentialRetryPolicyOptions)

Stratégie qui tente de réessayer les demandes tout en introduisant un délai croissant exponentiel.

formDataPolicy()

Stratégie qui encode FormData sur la requête dans le corps.

getDefaultProxySettings(string)

Cette méthode convertit une URL de proxy en ProxySettings à utiliser avec ProxyPolicy. Si aucun argument n’est donné, il tente d’analyser une URL de proxy à partir des variables d’environnement HTTPS_PROXY ou HTTP_PROXY.

isRestError(unknown)

Typeguard pour RestError

logPolicy(LogPolicyOptions)

Stratégie qui enregistre toutes les demandes et réponses.

multipartPolicy()

Stratégie de pipeline pour les requêtes multipartes

ndJsonPolicy()

ndJsonPolicy est une stratégie utilisée pour contrôler les paramètres actifs pour chaque requête.

proxyPolicy(ProxySettings, { customNoProxyList?: string[] })

Stratégie qui permet d’appliquer des paramètres proxy à toutes les demandes. Si les paramètres statiques ne sont pas passés, ils sont récupérés à partir des variables d’environnement HTTPS_PROXY ou HTTP_PROXY.

redirectPolicy(RedirectPolicyOptions)

Stratégie pour suivre les en-têtes d’emplacement du serveur afin de prendre en charge la redirection côté serveur. Dans le navigateur, cette stratégie n’est pas utilisée.

retryPolicy(RetryStrategy[], RetryPolicyOptions)

retryPolicy est une stratégie générique permettant d’activer les demandes de nouvelle tentative lorsque certaines conditions sont remplies

setClientRequestIdPolicy(string)

Chaque pipelineRequest obtient un ID unique lors de la création. Cette stratégie transmet cet ID unique via un en-tête HTTP pour permettre une meilleure télémétrie et le suivi.

systemErrorRetryPolicy(SystemErrorRetryPolicyOptions)

Stratégie de nouvelle tentative qui cherche spécifiquement à gérer les erreurs dans la couche de transport sous-jacente (par exemple, les échecs de recherche DNS) plutôt que les codes d’erreur retentables du serveur lui-même.

throttlingRetryPolicy(ThrottlingRetryPolicyOptions)

Stratégie qui retente lorsque le serveur envoie une réponse 429 avec un en-tête Retry-After.

Pour en savoir plus, consultez 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 et https://learn.microsoft.com/en-us/azure/virtual-machines/troubleshooting/troubleshooting-throttling-errors

tlsPolicy(TlsSettings)

Obtient une stratégie de pipeline qui ajoute le certificat client à l’agent HttpClient pour l’authentification.

tracingPolicy(TracingPolicyOptions)

Stratégie simple permettant de créer des étendues OpenTelemetry pour chaque requête effectuée par le pipeline qui a SpanOptions avec un parent. Les demandes effectuées sans étendue parente ne seront pas enregistrées.

userAgentPolicy(UserAgentPolicyOptions)

Stratégie qui définit l’en-tête User-Agent (ou équivalent) pour refléter la version de la bibliothèque.

Informations relatives à la fonction

agentPolicy(Agent)

Obtient une stratégie de pipeline qui définit http.agent

function agentPolicy(agent?: Agent): PipelinePolicy

Paramètres

agent
Agent

Retours

auxiliaryAuthenticationHeaderPolicy(AuxiliaryAuthenticationHeaderPolicyOptions)

Stratégie pour les jetons externes pour x-ms-authorization-auxiliary en-tête. Cet en-tête sera utilisé lors de la création d’une application interlocataire, nous devrons peut-être gérer les demandes d’authentification pour les ressources qui se trouvent dans différents locataires. Vous pouvez voir documentation ARM pour une exécution de la façon dont cette fonctionnalité fonctionne

function auxiliaryAuthenticationHeaderPolicy(options: AuxiliaryAuthenticationHeaderPolicyOptions): PipelinePolicy

Paramètres

Retours

bearerTokenAuthenticationPolicy(BearerTokenAuthenticationPolicyOptions)

Stratégie qui peut demander un jeton à partir d’une implémentation TokenCredential, puis l’appliquer à l’en-tête d’autorisation d’une requête en tant que jeton du porteur.

function bearerTokenAuthenticationPolicy(options: BearerTokenAuthenticationPolicyOptions): PipelinePolicy

Paramètres

Retours

createDefaultHttpClient()

Créez le httpClient correct pour l’environnement actuel.

function createDefaultHttpClient(): HttpClient

Retours

createEmptyPipeline()

Crée un pipeline totalement vide. Utile pour tester ou créer un modèle personnalisé.

function createEmptyPipeline(): Pipeline

Retours

createFile(Uint8Array, string, CreateFileOptions)

Créez un objet qui implémente l’interface File. Cet objet est destiné à être transmis dans RequestBodyType.formData et n’est pas garanti pour fonctionner comme prévu dans d’autres situations.

Utilisez cette fonction pour créer un objet File à utiliser dans RequestBodyType.formData dans les environnements où l’objet Fichier global n’est pas disponible.

function createFile(content: Uint8Array, name: string, options?: CreateFileOptions): File

Paramètres

content

Uint8Array

contenu du fichier sous la forme d’un Uint8Array en mémoire.

name

string

nom du fichier.

options
CreateFileOptions

métadonnées facultatives sur le fichier, par exemple, nom de fichier, taille de fichier, type MIME.

Retours

File

createFileFromStream(() => ReadableStream<Uint8Array> | ReadableStream, string, CreateFileFromStreamOptions)

Créez un objet qui implémente l’interface File. Cet objet est destiné à être transmis dans RequestBodyType.formData et n’est pas garanti pour fonctionner comme prévu dans d’autres situations.

Utilisez cette fonction pour :

  • Créez un objet File à utiliser dans RequestBodyType.formData dans les environnements où l’objet Fichier global n’est pas disponible.
  • Créez un objet de type Fichier à partir d’un flux lisible sans lire le flux en mémoire.
function createFileFromStream(stream: () => ReadableStream<Uint8Array> | ReadableStream, name: string, options?: CreateFileFromStreamOptions): File

Paramètres

stream

() => ReadableStream<Uint8Array> | ReadableStream

le contenu du fichier en tant que rappel retournant un flux. Lorsqu’un objet File effectué à l’aide de createFile est transmis dans le mappage de données de formulaire d’une requête, le flux ne sera pas lu en mémoire et sera diffusé en continu lorsque la requête est effectuée. En cas de nouvelle tentative, le flux doit être lu à nouveau. Ce rappel DOIT donc retourner un flux nouveau si possible.

name

string

nom du fichier.

options
CreateFileFromStreamOptions

métadonnées facultatives sur le fichier, par exemple, nom de fichier, taille de fichier, type MIME.

Retours

File

createHttpHeaders(RawHttpHeadersInput)

Crée un objet qui satisfait à l’interface HttpHeaders.

function createHttpHeaders(rawHeaders?: RawHttpHeadersInput): HttpHeaders

Paramètres

rawHeaders
RawHttpHeadersInput

Objet simple représentant les en-têtes initiaux

Retours

createPipelineFromOptions(InternalPipelineOptions)

Créez un pipeline avec un ensemble par défaut de stratégies personnalisables.

function createPipelineFromOptions(options: InternalPipelineOptions): Pipeline

Paramètres

options
InternalPipelineOptions

Options de configuration d’un pipeline personnalisé.

Retours

createPipelineRequest(PipelineRequestOptions)

Crée une demande de pipeline avec les options données. Cette méthode permet de définir facilement les valeurs par défaut et non obligatoires.

function createPipelineRequest(options: PipelineRequestOptions): PipelineRequest

Paramètres

options
PipelineRequestOptions

Options pour créer la requête avec.

Retours

decompressResponsePolicy()

Stratégie permettant d’activer la décompression de la réponse en fonction de Accept-Encoding en-tête https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding

function decompressResponsePolicy(): PipelinePolicy

Retours

defaultRetryPolicy(DefaultRetryPolicyOptions)

Stratégie qui retente en fonction de trois stratégies :

  • Lorsque le serveur envoie une réponse 429 avec un en-tête Retry-After.
  • En cas d’erreurs dans la couche de transport sous-jacente (par exemple, les échecs de recherche DNS).
  • Sinon, si la demande sortante échoue, elle réessaye avec un délai croissant exponentiel.
function defaultRetryPolicy(options?: DefaultRetryPolicyOptions): PipelinePolicy

Paramètres

Retours

exponentialRetryPolicy(ExponentialRetryPolicyOptions)

Stratégie qui tente de réessayer les demandes tout en introduisant un délai croissant exponentiel.

function exponentialRetryPolicy(options?: ExponentialRetryPolicyOptions): PipelinePolicy

Paramètres

options
ExponentialRetryPolicyOptions

Options qui configurent la logique de nouvelle tentative.

Retours

formDataPolicy()

Stratégie qui encode FormData sur la requête dans le corps.

function formDataPolicy(): PipelinePolicy

Retours

getDefaultProxySettings(string)

Avertissement

Cette API est à présent déconseillée.

  • Internally this method is no longer necessary when setting proxy information.

Cette méthode convertit une URL de proxy en ProxySettings à utiliser avec ProxyPolicy. Si aucun argument n’est donné, il tente d’analyser une URL de proxy à partir des variables d’environnement HTTPS_PROXY ou HTTP_PROXY.

function getDefaultProxySettings(proxyUrl?: string): ProxySettings | undefined

Paramètres

proxyUrl

string

URL du proxy à utiliser. Peut contenir des informations d’authentification.

Retours

ProxySettings | undefined

isRestError(unknown)

Typeguard pour RestError

function isRestError(e: unknown): e

Paramètres

e

unknown

Quelque chose d’intercepté par une clause catch.

Retours

e

logPolicy(LogPolicyOptions)

Stratégie qui enregistre toutes les demandes et réponses.

function logPolicy(options?: LogPolicyOptions): PipelinePolicy

Paramètres

options
LogPolicyOptions

Options de configuration de logPolicy.

Retours

multipartPolicy()

Stratégie de pipeline pour les requêtes multipartes

function multipartPolicy(): PipelinePolicy

Retours

ndJsonPolicy()

ndJsonPolicy est une stratégie utilisée pour contrôler les paramètres actifs pour chaque requête.

function ndJsonPolicy(): PipelinePolicy

Retours

proxyPolicy(ProxySettings, { customNoProxyList?: string[] })

Stratégie qui permet d’appliquer des paramètres proxy à toutes les demandes. Si les paramètres statiques ne sont pas passés, ils sont récupérés à partir des variables d’environnement HTTPS_PROXY ou HTTP_PROXY.

function proxyPolicy(proxySettings?: ProxySettings, options?: { customNoProxyList?: string[] }): PipelinePolicy

Paramètres

proxySettings
ProxySettings

ProxySettings à utiliser sur chaque requête.

options

{ customNoProxyList?: string[] }

paramètres supplémentaires, par exemple, modèles de NO_PROXY personnalisés

Retours

redirectPolicy(RedirectPolicyOptions)

Stratégie pour suivre les en-têtes d’emplacement du serveur afin de prendre en charge la redirection côté serveur. Dans le navigateur, cette stratégie n’est pas utilisée.

function redirectPolicy(options?: RedirectPolicyOptions): PipelinePolicy

Paramètres

options
RedirectPolicyOptions

Options pour contrôler le comportement de la stratégie.

Retours

retryPolicy(RetryStrategy[], RetryPolicyOptions)

retryPolicy est une stratégie générique permettant d’activer les demandes de nouvelle tentative lorsque certaines conditions sont remplies

function retryPolicy(strategies: RetryStrategy[], options?: RetryPolicyOptions): PipelinePolicy

Paramètres

strategies

RetryStrategy[]

Retours

setClientRequestIdPolicy(string)

Chaque pipelineRequest obtient un ID unique lors de la création. Cette stratégie transmet cet ID unique via un en-tête HTTP pour permettre une meilleure télémétrie et le suivi.

function setClientRequestIdPolicy(requestIdHeaderName?: string): PipelinePolicy

Paramètres

requestIdHeaderName

string

Nom de l’en-tête à transmettre l’ID de requête.

Retours

systemErrorRetryPolicy(SystemErrorRetryPolicyOptions)

Stratégie de nouvelle tentative qui cherche spécifiquement à gérer les erreurs dans la couche de transport sous-jacente (par exemple, les échecs de recherche DNS) plutôt que les codes d’erreur retentables du serveur lui-même.

function systemErrorRetryPolicy(options?: SystemErrorRetryPolicyOptions): PipelinePolicy

Paramètres

options
SystemErrorRetryPolicyOptions

Options qui personnalisent la stratégie.

Retours

throttlingRetryPolicy(ThrottlingRetryPolicyOptions)

Stratégie qui retente lorsque le serveur envoie une réponse 429 avec un en-tête Retry-After.

Pour en savoir plus, consultez 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 et https://learn.microsoft.com/en-us/azure/virtual-machines/troubleshooting/troubleshooting-throttling-errors

function throttlingRetryPolicy(options?: ThrottlingRetryPolicyOptions): PipelinePolicy

Paramètres

options
ThrottlingRetryPolicyOptions

Options qui configurent la logique de nouvelle tentative.

Retours

tlsPolicy(TlsSettings)

Obtient une stratégie de pipeline qui ajoute le certificat client à l’agent HttpClient pour l’authentification.

function tlsPolicy(tlsSettings?: TlsSettings): PipelinePolicy

Paramètres

tlsSettings
TlsSettings

Retours

tracingPolicy(TracingPolicyOptions)

Stratégie simple permettant de créer des étendues OpenTelemetry pour chaque requête effectuée par le pipeline qui a SpanOptions avec un parent. Les demandes effectuées sans étendue parente ne seront pas enregistrées.

function tracingPolicy(options?: TracingPolicyOptions): PipelinePolicy

Paramètres

options
TracingPolicyOptions

Options permettant de configurer les données de télémétrie journalisées par la stratégie de suivi.

Retours

userAgentPolicy(UserAgentPolicyOptions)

Stratégie qui définit l’en-tête User-Agent (ou équivalent) pour refléter la version de la bibliothèque.

function userAgentPolicy(options?: UserAgentPolicyOptions): PipelinePolicy

Paramètres

options
UserAgentPolicyOptions

Options pour personnaliser la valeur de l’agent utilisateur.

Retours