Partager via


Invoke-RestMethod

Envoie une requête HTTP ou HTTPS à un service web RESTful.

Syntaxe

Default (Par défaut)

Invoke-RestMethod
    [-Method <WebRequestMethod>]
    [-UseBasicParsing]
    [-Uri] <Uri>
    [-WebSession <WebRequestSession>]
    [-SessionVariable <String>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-CertificateThumbprint <String>]
    [-Certificate <X509Certificate>]
    [-UserAgent <String>]
    [-DisableKeepAlive]
    [-TimeoutSec <Int32>]
    [-Headers <IDictionary>]
    [-MaximumRedirection <Int32>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-ProxyUseDefaultCredentials]
    [-Body <Object>]
    [-ContentType <String>]
    [-TransferEncoding <String>]
    [-InFile <String>]
    [-OutFile <String>]
    [-PassThru]
    [<CommonParameters>]

Description

L’applet de commande Invoke-RestMethod envoie des requêtes HTTP et HTTPS aux services web REST (Representational State Transfer) qui retournent des données structurées riches.

PowerShell met en forme la réponse basée sur le type de données. Pour un flux RSS ou ATOM, PowerShell retourne les nœuds XML Item ou Entry. Pour JavaScript Object Notation (JSON) ou XML, PowerShell convertit ou désérialise le contenu en objets [pscustomobject]. Les commentaires ne sont pas autorisés dans les données JSON.

Avertissement

Par défaut, Invoke-RestMethod analyse le contenu de la page web. Le code de script dans la page web peut être exécuté lorsque la page est analysée. Utilisez le commutateur pour éviter l’exécution -UseBasicParsing du code de script.

Cette applet de commande est introduite dans Windows PowerShell 3.0. Cette commande peut être exécutée à l’aide de l’alias irm .

Exemples

Exemple 1 : Obtenir le flux RSS PowerShell

Invoke-RestMethod -Uri https://devblogs.microsoft.com/powershell/feed/ |
  Format-Table -Property Title, pubDate
Title                                                                pubDate
-----                                                                -------
Join the PowerShell 10th Anniversary Celebration!                    Tue, 08 Nov 2016 23:00:04 +0000
DSC Resource Kit November 2016 Release                               Thu, 03 Nov 2016 00:19:07 +0000
PSScriptAnalyzer Community Call - Oct 18, 2016                       Thu, 13 Oct 2016 17:52:35 +0000
New Home for In-Box DSC Resources                                    Sat, 08 Oct 2016 07:13:10 +0000
New Social Features on Gallery                                       Fri, 30 Sep 2016 23:04:34 +0000
PowerShellGet and PackageManagement in PowerShell Gallery and GitHub Thu, 29 Sep 2016 22:21:42 +0000
PowerShell Security at DerbyCon                                      Wed, 28 Sep 2016 01:13:19 +0000
DSC Resource Kit September Release                                   Thu, 22 Sep 2016 00:25:37 +0000
PowerShell DSC and implicit remoting broken in KB3176934             Tue, 23 Aug 2016 15:07:50 +0000
PowerShell on Linux and Open Source!                                 Thu, 18 Aug 2016 15:32:02 +0000

Cette commande utilise l’applet de commande Invoke-RestMethod pour obtenir des informations à partir du flux RSS du blog PowerShell. La commande utilise l’applet de commande Format-Table pour afficher les valeurs des propriétés Titre et pubDate de chaque blog sous forme de tableau.

Exemple 2

Dans l’exemple suivant, un utilisateur exécute Invoke-RestMethod pour effectuer une requête POST sur un site web intranet dans l’organisation de l’utilisateur.

$Cred = Get-Credential

# Next, allow the use of self-signed SSL certificates.

[System.Net.ServicePointManager]::ServerCertificateValidationCallback = { $true }

# Create variables to store the values consumed by the Invoke-RestMethod command.
# The search variable contents are later embedded in the body variable.

$Server = 'server.contoso.com'
$Url = "https://${server}:8089/services/search/jobs/export"
$Search = "search index=_internal | reverse | table index,host,source,sourcetype,_raw"

# The cmdlet handles URL encoding. The body variable describes the search criteria, specifies CSV as
# the output mode, and specifies a time period for returned data that starts two days ago and ends
# one day ago. The body variable specifies values for parameters that apply to the particular REST
# API with which Invoke-RestMethod is communicating.

$Body = @{
    search = $Search
    output_mode = "csv"
    earliest_time = "-2d@d"
    latest_time = "-1d@d"
}

# Now, run the Invoke-RestMethod command with all variables in place, specifying a path and file
# name for the resulting CSV output file.

Invoke-RestMethod -Method Post -Uri $url -Credential $Cred -Body $body -OutFile output.csv

{"preview":true,"offset":0,"result":{"sourcetype":"contoso1","count":"9624"}}

{"preview":true,"offset":1,"result":{"sourcetype":"contoso2","count":"152"}}

{"preview":true,"offset":2,"result":{"sourcetype":"contoso3","count":"88494"}}

{"preview":true,"offset":3,"result":{"sourcetype":"contoso4","count":"15277"}}

Exemple 3 : Passer plusieurs en-têtes

Cet exemple montre comment passer plusieurs en-têtes d’un hash-table à une API REST.

$headers = @{
    'userId' = 'UserIDValue'
    'token' = 'TokenValue'
}
Invoke-RestMethod -Uri $uri -Method Post -Headers $headers -Body $body

Les API nécessitent souvent des en-têtes passés pour l’authentification, la validation, etc.

Exemple 3 : Envoi de données de formulaire

Lorsque le corps est un formulaire ou qu’il s’agit de la sortie d’un autre appel Invoke-WebRequest, PowerShell définit le contenu de la requête sur les champs du formulaire.

Par exemple:

$R = Invoke-WebRequest https://website.com/login.aspx
$R.Forms[0].Name = "MyName"
$R.Forms[0].Password = "MyPassword"
Invoke-RestMethod https://website.com/service.aspx -Body $R.Forms[0]

Exemple 4 : Énumérer les éléments retournés sur le pipeline

GitHub retourne plusieurs objets dans un tableau. Si vous dirigez la sortie vers une autre commande, elle est envoyée en tant qu’objet [Object[]]unique.

Pour énumérer les objets dans le pipeline, dirigez les résultats vers Write-Output ou encapsulez l’applet de commande entre parenthèses. L’exemple suivant compte le nombre d’objets retournés par GitHub. Compte ensuite le nombre d’objets énumérés dans le pipeline.

$uri = 'https://api.github.com/repos/microsoftdocs/powershell-docs/issues'
$x = 0
Invoke-RestMethod -Uri $uri | ForEach-Object { $x++ }
$x
1

$x = 0
(Invoke-RestMethod -Uri $uri) | ForEach-Object { $x++ }
$x
30

$x = 0
Invoke-RestMethod -Uri $uri | Write-Output | ForEach-Object { $x++ }
$x
30

Paramètres

-Body

Spécifie le corps de la requête. Le corps est le contenu de la requête qui suit les en-têtes HTTP. Vous pouvez également transmettre une valeur de corps à Invoke-RestMethod.

Le paramètre Body peut être utilisé pour spécifier une liste de paramètres de requête ou spécifier le contenu du .

demander. Lorsque l’entrée est une requête GET et que le corps est un IDictionary (généralement, une table de hachage), le corps est ajouté à l’URI en tant que paramètres de requête. Pour d’autres types de requêtes (tels que POST), le corps est défini comme valeur du corps de la requête au format nom=valeur standard.

Avertissement

La sortie détaillée d’un corps POST se terminera par with -1-byte payload, même si la taille du corps est à la fois connue et envoyée dans l’en-tête HTTP Content-Length.

Propriétés du paramètre

Type:Object
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Certificate

Spécifie le certificat client utilisé pour une demande web sécurisée. Entrez une variable qui contient un certificat ou une commande ou une expression qui obtient le certificat.

Pour rechercher un certificat, utilisez Get-PfxCertificate ou utilisez l’applet de commande Get-ChildItem dans le lecteur Certificat (Cert:). Si le certificat n’est pas valide ou n’a pas d’autorité suffisante, la commande échoue.

Propriétés du paramètre

Type:X509Certificate
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-CertificateThumbprint

Spécifie le certificat de clé publique numérique (X509) d’un compte d’utilisateur autorisé à envoyer la demande. Entrez l’empreinte numérique du certificat.

Les certificats sont utilisés dans l’authentification basée sur les certificats client. Les certificats ne peuvent être mappés qu’à des comptes d’utilisateur locaux, et non à des comptes de domaine.

Pour afficher l’empreinte numérique du certificat, utilisez la commande Get-Item ou Get-ChildItem pour rechercher le certificat dans Cert:\CurrentUser\My.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ContentType

Spécifie le type de contenu de la requête web.

Si la valeur de ContentType contient le format d’encodage (comme charset), l’applet de commande utilise ce format pour encoder le corps de la requête web. Si le ContentType ne spécifie pas de format d’encodage, le format d’encodage par défaut est utilisé à la place. Un exemple d'ContentType avec un format d’encodage est text/plain; charset=iso-8859-5, qui spécifie l’alphabet latin/cyrillique.

Si vous omettez le paramètre, le type de contenu peut être différent en fonction de la méthode HTTP que vous utilisez :

  • Pour une méthode POST, le type de contenu est application/x-www-form-urlencoded
  • Pour une méthode PUT, le type de contenu est application/json
  • Pour les autres méthodes, le type de contenu n’est pas spécifié dans la requête

Si vous utilisez le paramètre InFile pour charger un fichier, vous devez définir le type de contenu. En règle générale, le type doit être application/octet-stream. Toutefois, vous devez définir le type de contenu en fonction des exigences du point de terminaison.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Credential

Spécifie un compte d’utilisateur autorisé à envoyer la demande. La valeur par défaut est l’utilisateur actuel.

Tapez un nom d’utilisateur, tel que User01 ou Domain01\User01, ou entrez un objet PSCredential généré par l’applet de commande Get-Credential.

Les informations d’identification sont stockées dans un objet PSCredential et le mot de passe est stocké en tant que SecureString.

Remarque

Pour plus d’informations sur la protection des données de SecureString, consultez Quelle est la sécurité de SecureString ?.

Propriétés du paramètre

Type:PSCredential
Valeur par défaut:Current user
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-DisableKeepAlive

Définit la valeur KeepAlive dans l’en-tête HTTP sur Faux. Par défaut, KeepAlive a la valeur True. KeepAlive établit une connexion persistante au serveur pour faciliter les requêtes suivantes.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Headers

Spécifie les en-têtes de la requête web. Entrez une table de hachage ou un dictionnaire.

Pour définir les en-têtes UserAgent, utilisez le paramètre UserAgent. Vous ne pouvez pas utiliser ce paramètre pour spécifier les en-têtes UserAgent ou cookie.

Propriétés du paramètre

Type:IDictionary
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-InFile

Obtient le contenu du corps de la requête web à partir d’un fichier. Entrez un chemin d’accès et un nom de fichier. Si vous omettez le chemin d’accès, la valeur par défaut est l’emplacement actuel.

Vous devez également définir le type de contenu de la requête. Par exemple, pour charger un fichier, vous devez définir le type de contenu. En règle générale, le type doit être application/octet-stream. Toutefois, vous devez définir le type de contenu en fonction des exigences du point de terminaison.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-MaximumRedirection

Détermine le nombre de fois où Windows PowerShell redirige une connexion vers un AUTRE URI (Uniform Resource Identifier) avant l’échec de la connexion. La valeur par défaut est 5. La valeur 0 (zéro) empêche toute redirection.

Propriétés du paramètre

Type:Int32
Valeur par défaut:5
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Method

Spécifie la méthode utilisée pour la requête web. Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Default
  • Delete
  • Get
  • Head
  • Merge
  • Options
  • Patch
  • Post
  • Put
  • Trace

Propriétés du paramètre

Type:WebRequestMethod
Valeur par défaut:Default
Valeurs acceptées:Default, Get, Head, Post, Put, Delete, Trace, Options, Merge, Patch
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-OutFile

Enregistre le corps de la réponse dans le fichier de sortie spécifié. Entrez un chemin d’accès et un nom de fichier. Si vous omettez le chemin d’accès, la valeur par défaut est l’emplacement actuel.

Par défaut, Invoke-RestMethod retourne les résultats au pipeline.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-PassThru

Ce paramètre est valide uniquement lorsque le paramètre OutFile est également utilisé dans la commande. L’intention est d’écrire les résultats dans le fichier et dans le pipeline.

Remarque

Lorsque vous utilisez le paramètre PassThru, la sortie est écrite dans le pipeline, mais le fichier est vide. Pour plus d'informations, consultez le problème #15409 de PowerShell .

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:No output
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Proxy

Utilise un serveur proxy pour la requête, plutôt que de se connecter directement à la ressource Internet. Entrez l’URI d’un serveur proxy réseau.

Propriétés du paramètre

Type:Uri
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ProxyCredential

Spécifie un compte d’utilisateur autorisé à utiliser le serveur proxy spécifié par le paramètre Proxy. La valeur par défaut est l’utilisateur actuel.

Tapez un nom d’utilisateur, tel que « User01 » ou « Domain01\User01 », ou entrez un objet PSCredential, tel qu’un objet généré par l’applet de commande Get-Credential.

Ce paramètre est valide uniquement lorsque le paramètre proxy est également utilisé dans la commande. Vous ne pouvez pas utiliser les paramètres ProxyCredential et ProxyUseDefaultCredentials dans la même commande.

Propriétés du paramètre

Type:PSCredential
Valeur par défaut:Current user
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ProxyUseDefaultCredentials

Utilise les informations d’identification de l’utilisateur actuel pour accéder au serveur proxy spécifié par le paramètre proxy.

Ce paramètre est valide uniquement lorsque le paramètre proxy est également utilisé dans la commande. Vous ne pouvez pas utiliser les paramètres ProxyCredential et ProxyUseDefaultCredentials dans la même commande.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-SessionVariable

Crée une variable contenant la session de requête web. Entrez un nom de variable sans symbole dollar ($).

Lorsque vous spécifiez une variable de session, Invoke-RestMethod crée un objet de session de requête web et l’affecte à une variable portant le nom spécifié dans votre session PowerShell. Vous pouvez utiliser la variable dans votre session dès que la commande est terminée.

Contrairement à une session distante, la session de requête web n’est pas une connexion persistante. Il s’agit d’un objet qui contient des informations sur la connexion et la demande, notamment les cookies, les informations d’identification, la valeur de redirection maximale et la chaîne de l’agent utilisateur. Vous pouvez l’utiliser pour partager l’état et les données entre les requêtes web.

Pour utiliser la session de requête web dans les requêtes web suivantes, spécifiez la variable de session dans la valeur du paramètre WebSession. PowerShell utilise les données de l’objet de session de requête web lors de l’établissement de la nouvelle connexion. Pour remplacer une valeur dans la session de requête web, utilisez un paramètre d’applet de commande, tel que UserAgent ou Credential. Les valeurs des paramètres sont prioritaires sur les valeurs de la session de requête web.

Vous ne pouvez pas utiliser les paramètres SessionVariable et WebSession dans la même commande.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:SV

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-TimeoutSec

Spécifie la durée pendant laquelle la requête peut être en attente avant qu’elle expire. Entrez une valeur en secondes. La valeur par défaut, 0, spécifie un délai d’attente indéfini.

Une requête DNS (Domain Name System) peut prendre jusqu’à 15 secondes pour retourner ou expirer. Si votre requête contient un nom d’hôte qui nécessite une résolution et que vous définissez TimeoutSec sur une valeur supérieure à zéro, mais moins de 15 secondes, cela peut prendre 15 secondes ou plus avant qu’une exception WebException soit levée, et votre requête expire.

Propriétés du paramètre

Type:Int32
Valeur par défaut:0
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-TransferEncoding

Spécifie une valeur pour l’en-tête de réponse HTTP d’encodage de transfert. Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Chunked
  • Compress
  • Deflate
  • GZip
  • Identity

Propriétés du paramètre

Type:String
Valeur par défaut:None
Valeurs acceptées:chunked, compress, deflate, gzip, identity
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Uri

Spécifie l’URI (Uniform Resource Identifier) de la ressource Internet à laquelle la requête web est envoyée. Ce paramètre prend en charge les valeurs HTTP, HTTPS, FTP et FILE.

Ce paramètre est obligatoire. Le nom du paramètre (Uri) est facultatif.

Propriétés du paramètre

Type:Uri
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-UseBasicParsing

Indique que l’applet de commande utilise l’analyse de base. L’applet de commande retourne le code HTML brut dans un objet String.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-UseDefaultCredentials

Utilise les informations d’identification de l’utilisateur actuel pour envoyer la requête web.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-UserAgent

Spécifie une chaîne d’agent utilisateur pour la requête web.

L’agent utilisateur par défaut est similaire à Mozilla/5.0 (Windows NT 10.0; Microsoft Windows 10.0.15063; en-US) PowerShell/6.0.0 avec de légères variations pour chaque système d’exploitation et plateforme.

Pour tester un site web avec la chaîne d’agent utilisateur standard utilisée par la plupart des navigateurs Internet, utilisez les propriétés de la classe PSUserAgent, telle que Chrome, Firefox, InternetExplorer, Opera et Safari.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-WebSession

Spécifie une session de requête web. Entrez le nom de la variable, y compris le signe dollar ($).

Pour remplacer une valeur dans la session de requête web, utilisez un paramètre d’applet de commande, tel que UserAgent ou Credential. Les valeurs des paramètres sont prioritaires sur les valeurs de la session de requête web.

Contrairement à une session distante, la session de requête web n’est pas une connexion persistante. Il s’agit d’un objet qui contient des informations sur la connexion et la demande, notamment les cookies, les informations d’identification, la valeur de redirection maximale et la chaîne de l’agent utilisateur. Vous pouvez l’utiliser pour partager l’état et les données entre les requêtes web.

Pour créer une session de requête web, entrez un nom de variable, sans signe dollar, dans la valeur du paramètre SessionVariable d'une commande Invoke-RestMethod. Invoke-RestMethod crée la session et l’enregistre dans la variable. Dans les commandes suivantes, utilisez la variable comme valeur du paramètre webSession.

Vous ne pouvez pas utiliser les paramètres SessionVariable et WebSession dans la même commande.

Propriétés du paramètre

Type:WebRequestSession
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

Object

Vous pouvez diriger le corps d’une requête web vers cette applet de commande.

Sorties

Int64

Lorsque la requête retourne un entier, cette applet de commande retourne cet entier.

String

Lorsque la requête retourne une chaîne, cette applet de commande retourne cette chaîne.

XmlDocument

Lorsque la requête retourne du code XML valide, cette applet de commande la renvoie en tant que XmlDocument.

PSObject

Lorsque la requête retourne des chaînes JSON, cette applet de commande retourne une PSObject représentant les données.

Notes

Windows PowerShell inclut les alias suivants pour Invoke-RestMethod:

  • irm

Lorsque le point de terminaison REST retourne plusieurs objets, les objets sont reçus sous forme de tableau. Si vous dirigez la sortie de Invoke-RestMethod vers une autre commande, elle est envoyée en tant qu’objet [Object[]] unique. Le contenu de ce tableau n’est pas énuméré pour la commande suivante sur le pipeline.