Invoke-RestMethod

Skickar en HTTP- eller HTTPS-begäran till en RESTful-webbtjänst.

Syntax

StandardMethod (Standard)

Invoke-RestMethod
    [-Uri] <Uri>
    [-Method <WebRequestMethod>]
    [-FollowRelLink]
    [-MaximumFollowRelLink <Int32>]
    [-ResponseHeadersVariable <String>]
    [-StatusCodeVariable <String>]
    [-UseBasicParsing]
    [-HttpVersion <Version>]
    [-WebSession <WebRequestSession>]
    [-SessionVariable <String>]
    [-AllowUnencryptedAuthentication]
    [-Authentication <WebAuthenticationType>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-CertificateThumbprint <String>]
    [-Certificate <X509Certificate>]
    [-SkipCertificateCheck]
    [-SslProtocol <WebSslProtocol>]
    [-Token <SecureString>]
    [-UserAgent <String>]
    [-DisableKeepAlive]
    [-TimeoutSec <Int32>]
    [-Headers <IDictionary>]
    [-MaximumRedirection <Int32>]
    [-MaximumRetryCount <Int32>]
    [-RetryIntervalSec <Int32>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-ProxyUseDefaultCredentials]
    [-Body <Object>]
    [-Form <IDictionary>]
    [-ContentType <String>]
    [-TransferEncoding <String>]
    [-InFile <String>]
    [-OutFile <String>]
    [-PassThru]
    [-Resume]
    [-SkipHttpErrorCheck]
    [-PreserveAuthorizationOnRedirect]
    [-SkipHeaderValidation]
    [<CommonParameters>]

StandardMethodNoProxy

Invoke-RestMethod
    [-Uri] <Uri>
    -NoProxy
    [-Method <WebRequestMethod>]
    [-FollowRelLink]
    [-MaximumFollowRelLink <Int32>]
    [-ResponseHeadersVariable <String>]
    [-StatusCodeVariable <String>]
    [-UseBasicParsing]
    [-HttpVersion <Version>]
    [-WebSession <WebRequestSession>]
    [-SessionVariable <String>]
    [-AllowUnencryptedAuthentication]
    [-Authentication <WebAuthenticationType>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-CertificateThumbprint <String>]
    [-Certificate <X509Certificate>]
    [-SkipCertificateCheck]
    [-SslProtocol <WebSslProtocol>]
    [-Token <SecureString>]
    [-UserAgent <String>]
    [-DisableKeepAlive]
    [-TimeoutSec <Int32>]
    [-Headers <IDictionary>]
    [-MaximumRedirection <Int32>]
    [-MaximumRetryCount <Int32>]
    [-RetryIntervalSec <Int32>]
    [-Body <Object>]
    [-Form <IDictionary>]
    [-ContentType <String>]
    [-TransferEncoding <String>]
    [-InFile <String>]
    [-OutFile <String>]
    [-PassThru]
    [-Resume]
    [-SkipHttpErrorCheck]
    [-PreserveAuthorizationOnRedirect]
    [-SkipHeaderValidation]
    [<CommonParameters>]

CustomMethod

Invoke-RestMethod
    [-Uri] <Uri>
    -CustomMethod <String>
    [-FollowRelLink]
    [-MaximumFollowRelLink <Int32>]
    [-ResponseHeadersVariable <String>]
    [-StatusCodeVariable <String>]
    [-UseBasicParsing]
    [-HttpVersion <Version>]
    [-WebSession <WebRequestSession>]
    [-SessionVariable <String>]
    [-AllowUnencryptedAuthentication]
    [-Authentication <WebAuthenticationType>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-CertificateThumbprint <String>]
    [-Certificate <X509Certificate>]
    [-SkipCertificateCheck]
    [-SslProtocol <WebSslProtocol>]
    [-Token <SecureString>]
    [-UserAgent <String>]
    [-DisableKeepAlive]
    [-TimeoutSec <Int32>]
    [-Headers <IDictionary>]
    [-MaximumRedirection <Int32>]
    [-MaximumRetryCount <Int32>]
    [-RetryIntervalSec <Int32>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-ProxyUseDefaultCredentials]
    [-Body <Object>]
    [-Form <IDictionary>]
    [-ContentType <String>]
    [-TransferEncoding <String>]
    [-InFile <String>]
    [-OutFile <String>]
    [-PassThru]
    [-Resume]
    [-SkipHttpErrorCheck]
    [-PreserveAuthorizationOnRedirect]
    [-SkipHeaderValidation]
    [<CommonParameters>]

CustomMethodNoProxy

Invoke-RestMethod
    [-Uri] <Uri>
    -CustomMethod <String>
    -NoProxy
    [-FollowRelLink]
    [-MaximumFollowRelLink <Int32>]
    [-ResponseHeadersVariable <String>]
    [-StatusCodeVariable <String>]
    [-UseBasicParsing]
    [-HttpVersion <Version>]
    [-WebSession <WebRequestSession>]
    [-SessionVariable <String>]
    [-AllowUnencryptedAuthentication]
    [-Authentication <WebAuthenticationType>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-CertificateThumbprint <String>]
    [-Certificate <X509Certificate>]
    [-SkipCertificateCheck]
    [-SslProtocol <WebSslProtocol>]
    [-Token <SecureString>]
    [-UserAgent <String>]
    [-DisableKeepAlive]
    [-TimeoutSec <Int32>]
    [-Headers <IDictionary>]
    [-MaximumRedirection <Int32>]
    [-MaximumRetryCount <Int32>]
    [-RetryIntervalSec <Int32>]
    [-Body <Object>]
    [-Form <IDictionary>]
    [-ContentType <String>]
    [-TransferEncoding <String>]
    [-InFile <String>]
    [-OutFile <String>]
    [-PassThru]
    [-Resume]
    [-SkipHttpErrorCheck]
    [-PreserveAuthorizationOnRedirect]
    [-SkipHeaderValidation]
    [<CommonParameters>]

Description

Cmdleten Invoke-RestMethod skickar HTTP- och HTTPS-begäranden till REST-webbtjänster (Representational State Transfer) som returnerar omfattande strukturerade data.

PowerShell formaterar svaret baserat på datatypen. För en RSS- eller ATOM-feed returnerar PowerShell XML-noderna för objekt eller poster. För JavaScript Object Notation (JSON) eller XML konverterar Eller deserialiserar PowerShell innehållet till [PSCustomObject] objekt.

Anmärkning

När REST-slutpunkten returnerar flera objekt tas objekten emot som en matris. Om du skickar utdata från Invoke-RestMethod till ett annat kommando skickas det som ett enda [Object[]] objekt. Innehållet i matrisen räknas inte upp för nästa kommando i pipelinen.

Den här cmdleten introduceras i Windows PowerShell 3.0.

Från och med PowerShell 7.0 stöder Invoke-RestMethod proxykonfiguration som definierats av miljövariabler. Se avsnittet Anteckningar i den här artikeln.

Exempel

Exempel 1: Hämta PowerShell RSS-feeden

I det här exemplet används cmdleten Invoke-RestMethod för att hämta information från POWERShell-bloggens RSS-flöde. Kommandot använder cmdleten Format-Table för att visa värdena för Title och pubDate egenskaper för varje blogg i en tabell.

Invoke-RestMethod -Uri https://blogs.msdn.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

Exempel 2: Kör en POST-begäran

I det här exemplet kör en användare Invoke-RestMethod för att göra en POST-begäran på en intranätwebbplats i användarens organisation.

$Cred = Get-Credential
$Url = "https://server.contoso.com:8089/services/search/jobs/export"
$Body = @{
    search = "search index=_internal | reverse | table index,host,source,sourcetype,_raw"
    output_mode = "csv"
    earliest_time = "-2d@d"
    latest_time = "-1d@d"
}
Invoke-RestMethod -Method 'Post' -Uri $url -Credential $Cred -Body $body -OutFile output.csv

Autentiseringsuppgifterna efterfrågas och lagras sedan i $Cred och den URL som ska nås definieras i $Url.

Variabeln $Body beskriver sökvillkoren, anger CSV som utdataläge och anger en tidsperiod för returnerade data som börjar för två dagar sedan och slutar för en dag sedan. Brödtextvariabeln anger värden för parametrar som gäller för det specifika REST API som Invoke-RestMethod kommunicerar med.

Kommandot Invoke-RestMethod körs med alla variabler på plats och anger en sökväg och ett filnamn för den resulterande CSV-utdatafilen.

Exempel 3: Följ relationslänkar

Vissa REST-API:er stöder sidnumrering via relationslänkar per RFC5988. I stället för att analysera sidhuvudet för att hämta URL:en för nästa sida kan du låta cmdleten göra detta åt dig. Det här exemplet returnerar de två första sidorna med problem från PowerShell GitHub-lagringsplatsen.

$url = 'https://api.github.com/repos/powershell/powershell/issues'
Invoke-RestMethod $url -FollowRelLink -MaximumFollowRelLink 2

Exempel 4: Förenklad multipart-inlämning/Form-Data

Vissa API:er kräver multipart/form-data inlämningar för att ladda upp filer och blandat innehåll. Det här exemplet visar hur du uppdaterar en användares profil.

$Uri = 'https://api.contoso.com/v2/profile'
$Form = @{
    firstName  = 'John'
    lastName   = 'Doe'
    email      = 'john.doe@contoso.com'
    avatar     = Get-Item -Path 'c:\Pictures\jdoe.png'
    birthday   = '1980-10-15'
    hobbies    = 'Hiking','Fishing','Jogging'
}
$Result = Invoke-RestMethod -Uri $Uri -Method Post -Form $Form

Profilformuläret kräver följande fält: firstName, lastName, email, avatar, birthdayoch hobbies. API:et förväntar sig att en bild för användarprofilbilden ska anges i fältet avatar. API:et accepterar också flera hobbies bidrag som ska skickas in i samma formulär.

När du skapar $Form HashTable används nyckelnamnen som formulärfältnamn. Som standard konverteras värdena i HashTable till strängar. Om det finns ett System.IO.FileInfo värde skickas filinnehållet. Om det finns en samling, till exempel matriser eller listor, skickas formulärfältet flera gånger.

Genom att använda Get-Itemavatar nyckeln FileInfo kommer objektet att ställas in som värde. Resultatet är att bilddata för jdoe.png kommer att skickas.

Genom att ange en lista till hobbies nyckeln hobbies kommer fältet att finnas i överföringarna en gång för varje listobjekt.

Exempel 5: Skicka flera rubriker

API:er kräver ofta skickade huvuden för autentisering eller validering. Det här exemplet visar hur du skickar flera huvuden från en hash-table till ett REST-API.

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

Exempel 6: Räkna upp returnerade objekt i pipelinen

GitHub returnerar flera objekt som en matris. Om du skickar utdata till ett annat kommando skickas det som ett enda [Object[]]objekt.

Om du vill räkna upp objekten i pipelinen dirigerar du resultatet till Write-Output eller omsluter cmdleten inom parenteser. I följande exempel räknas antalet objekt som returneras av GitHub. Räknar sedan antalet objekt som räknas upp till pipelinen.

$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

Exempel 7: Hoppa över sidhuvudverifiering

Som standard Invoke-RestMethod validerar cmdleten värdena för välkända rubriker som har ett standardards-definierat värdeformat. I följande exempel visas hur den här valideringen kan generera ett fel och hur du kan använda parametern SkipHeaderValidation för att undvika att validera värden för slutpunkter som tolererar ogiltigt formaterade värden.

$Uri = 'https://httpbin.org/headers'
$InvalidHeaders = @{
    'If-Match' = '12345'
}

Invoke-RestMethod -Uri $Uri -Headers $InvalidHeaders

Invoke-RestMethod -Uri $Uri -Headers $InvalidHeaders -SkipHeaderValidation |
    Format-List
Invoke-RestMethod: The format of value '12345' is invalid.

headers : @{Host=httpbin.org; If-Match=12345; User-Agent=Mozilla/5.0 (Windows NT 10.0; Microsoft Windows
          10.0.19044; en-US) PowerShell/7.2.5;  X-Amzn-Trace-Id=Root=1-62f150a6-27754fd4226f31b43a3d2874}

httpbin.org är en tjänst som returnerar information om webbbegäranden och svar för felsökning. Variabeln $Uri tilldelas till tjänstens /headers slutpunkt, som returnerar en begärans huvuden som innehåll i svaret.

If-Match-begäransrubriken definieras i RFC-7232 avsnitt 3.1 och kräver att värdet för den rubriken definieras med omgivande citattecken. Variabeln $InvalidHeaders tilldelas en hash-tabell där värdet för If-Match är ogiltigt eftersom det definieras som 12345 i stället för "12345".

När man anropar Invoke-RestMethod med ogiltiga huvuden returneras ett fel som rapporterar att det formaterade värdet är ogiltigt. Begäran skickas inte till slutpunkten.

Anropa Invoke-RestMethod med parametern SkipHeaderValidation för att ignorera verifieringsfelet och skicka begäran till slutpunkten. Eftersom slutpunkten tolererar icke-kompatibla huvudvärden returnerar cmdleten svarsobjektet utan fel.

Exempel 8: Skicka en begäran med HTTP 2.0

Det här exemplet frågar efter GitHub-problem med hjälp av HTTP 2.0-protokollet.

$uri = 'https://api.github.com/repos/microsoftdocs/powershell-docs/issues'
Invoke-RestMethod -Uri $uri -HttpVersion 2.0 -SkipCertificateCheck

Parametrar

-AllowUnencryptedAuthentication

Tillåter sändning av autentiseringsuppgifter och hemligheter via okrypterade anslutningar. Som standard resulterar det i ett fel om du anger autentiseringsuppgifter eller något autentiseringsalternativ med en URI som inte börjar med https:// och begäran avbryts för att förhindra oavsiktlig kommunikation av hemligheter i oformaterad text över okrypterade anslutningar. Om du vill åsidosätta det här beteendet på egen risk anger du parametern AllowUnencryptedAuthentication.

Varning

Att använda den här parametern är inte säkert och rekommenderas inte. Den tillhandahålls endast för kompatibilitet med äldre system som inte kan tillhandahålla krypterade anslutningar. Använd på egen risk.

Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Authentication

Anger den explicita autentiseringstyp som ska användas för begäran. Standardvärdet är Ingen. Parametern Authentication kan inte användas med parametern UseDefaultCredentials.

Tillgängliga autentiseringsalternativ:

  • None: Det här är standardalternativet när autentisering inte har angetts. Ingen uttrycklig autentisering kommer att användas.
  • Basic: Kräver autentiseringsuppgifter. Autentiseringsuppgifterna används för att skicka ett RFC 7617 Basic Authentication-huvud Authorization: Basic i formatet .base64(user:password)
  • Bearer: Kräver parametern Token. Skickar ett RFC 6750 Authorization: Bearer-huvud med den angivna token.
  • OAuth: Kräver parametern Token. Skickar ett RFC 6750 Authorization: Bearer-huvud med den angivna token.

Om du tillhandahåller autentisering åsidosätter alla Authorization rubriker som tillhandahålls till rubriker eller som ingår i WebSession.

Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:WebAuthenticationType
Standardvärde:None
Godkända värden:None, Basic, Bearer, OAuth
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Body

Anger innehållet i begäran. Kroppen är innehållet i begäran som följer efter rubrikerna. Du kan också skicka ett kroppsvärde till Invoke-RestMethod.

Parametern Body kan användas för att ange en lista med frågeparametrar eller ange innehållet i svaret.

När indata är en POST-begäran och brödtexten är en Stränganges värdet till vänster om det första likhetstecknet (=) som en nyckel i formulärdata och den återstående texten anges som värdet. Om du vill ange flera nycklar använder du ett IDictionary-objekt, till exempel en hash-tabell, för Body.

När indata är en GET-begäran och brödtexten är en IDictionary- (vanligtvis en hashtabell) läggs brödtexten till i URI:n som frågeparametrar. För andra typer av begäranden (till exempel PATCH) anges brödtexten som värdet för begärandetexten i standardformatet name=value med värdena URL-kodade.

När indata är ett System.Xml.XmlNode- objekt och XML-deklarationen anger en kodning, används kodningen för data i begäran om den inte åsidosätts av parametern ContentType.

När brödtexten är ett formulär, eller om det är utdata från ett annat Invoke-WebRequest-anrop, anger PowerShell begärandeinnehållet till formulärfälten.

Parametern Body kan också acceptera ett System.Net.Http.MultipartFormDataContent -objekt. Detta kommer att underlätta multipart/form-data förfrågningar. När ett MultipartFormDataContent-objekt anges för Body, kommer alla innehållsrelaterade rubriker som anges till parametrarna ContentType, HeadersellerWebSession att åsidosättas av objektets innehållsrubriker MultipartFormDataContent . Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:Object
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Certificate

Anger det klientcertifikat som används för en säker webbbegäran. Ange en variabel som innehåller ett certifikat eller ett kommando eller uttryck som hämtar certifikatet.

Om du vill hitta ett certifikat använder du Get-PfxCertificate eller Get-ChildItem-cmdleten på Certifikat-enheten (Cert:). Om certifikatet inte är giltigt eller inte har tillräcklig behörighet misslyckas kommandot.

Parameteregenskaper

Typ:X509Certificate
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-CertificateThumbprint

Anger det digitala offentliga nyckelcertifikatet (X509) för ett användarkonto som har behörighet att skicka begäran. Ange certifikatets tumavtryck.

Certifikat används i klientcertifikatbaserad autentisering. Certifikat kan bara mappas till lokala användarkonton, inte domänkonton.

Om du vill se certifikatets tumavtryck använder du kommandot Get-Item eller Get-ChildItem för att hitta certifikatet i Cert:\CurrentUser\My.

Anmärkning

Den här funktionen stöds för närvarande endast på Windows OS-plattformar.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-ContentType

Anger innehållstypen för webbbegäran.

Om värdet för ContentType innehåller kodningsformatet (som charset) använder cmdleten formatet för att koda brödtexten i webbbegäran. Om ContentType- inte anger något kodningsformat används standardkodningsformatet i stället. Ett exempel på en ContentType- med ett kodningsformat är text/plain; charset=iso-8859-5, som anger alfabetet latinsk/kyrillisk.

Om den här parametern utelämnas och begärandemetoden är POST anger Invoke-RestMethod innehållstypen till application/x-www-form-urlencoded. Annars anges inte innehållstypen i anropet.

ContentType åsidosätts när ett MultipartFormDataContent objekt anges för Body.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Credential

Anger ett användarkonto som har behörighet att skicka begäran. Standardvärdet är den aktuella användaren.

Ange ett användarnamn, till exempel User01 eller Domain01\User01, eller ange ett PSCredential- objekt som genereras av cmdleten Get-Credential.

för autentiseringsuppgifter kan användas ensamt eller tillsammans med vissa autentisering parameteralternativ. När den används ensam kommer den endast att tillhandahålla autentiseringsuppgifter till fjärrservern om fjärrservern skickar en begäran om autentiseringsutmaning. När de används med autentiseringsalternativ skickas autentiseringsuppgifterna explicit.

Autentiseringsuppgifter lagras i ett PSCredential--objekt och lösenordet lagras som en SecureString-.

Anmärkning

Mer information om SecureString dataskydd finns i Hur säker är SecureString?.

Parameteregenskaper

Typ:PSCredential
Standardvärde:Current user
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-CustomMethod

Anger den anpassade metod som används för webbbegäran. Detta kan användas med den begärandemetod som krävs av slutpunkten och som inte är ett tillgängligt alternativ för metoden. Method och CustomMethod kan inte användas tillsammans.

Exempel:

Invoke-RestMethod -uri 'https://api.contoso.com/widget/' -CustomMethod 'TEST'

Detta gör en TEST HTTP-begäran till API:et.

Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:CENTIMETER

Parameteruppsättningar

CustomMethodNoProxy
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False
CustomMethod
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-DisableKeepAlive

Anger att cmdleten anger KeepAlive-värdet i HTTP-huvudet till False. Som standard är KeepAlive sant. KeepAlive upprättar en beständig anslutning till servern för att underlätta efterföljande begäranden.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

Anger att cmdleten ska följa relationslänkarna.

Vissa REST-API:er stöder sidnumrering via relationslänkar per RFC5988. I stället för att analysera sidhuvudet för att hämta URL:en för nästa sida kan du låta cmdleten göra detta åt dig. Om du vill ange hur många gånger du ska följa relationslänkar använder du parametern MaximumFollowRelLink.

När du använder den här växeln returnerar cmdleten en samling sidor med resultat. Varje sida med resultat kan innehålla flera resultatobjekt.

Den här funktionen lades till i PowerShell 6.0.0.

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False
Alias:FL
(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Form

Konverterar en ordlista till en multipart/form-data-inlämning. Formulär får inte användas med Body. Om ContentType kommer att ignoreras.

Nyckelorden i ordlistan kommer att användas som namn på formulärfält. Som standard konverteras formulärvärden till strängvärden.

Om värdet är ett System.IO.FileInfo-objekt skickas innehållet i den binära filen. Namnet på filen skickas som .filename MIME-filen kommer att ställas in som application/octet-stream. Get-Item kan användas för att förenkla leveransen av objektet System.IO.FileInfo.

$Form = @{
    resume = Get-Item 'c:\Users\jdoe\Documents\John Doe.pdf'
}

Om värdet är en samlingstyp, till exempel en matris eller lista, skickas fältet for flera gånger. Värdena i listan behandlas som strängar som standard. Om värdet är ett System.IO.FileInfo-objekt skickas innehållet i den binära filen. Kapslade samlingar stöds inte.

$Form = @{
    tags     = 'Vacation', 'Italy', '2017'
    pictures = Get-ChildItem 'c:\Users\jdoe\Pictures\2017-Italy\'
}

I exemplet ovan kommer fältet att anges tre gånger i formuläret, tags en gång för var och en av Vacation, Italy, och 2017. Fältet pictures skickas också en gång för varje fil i mappen 2017-Italy . Det binära innehållet i filerna i den mappen skickas som värden.

Den här funktionen lades till i PowerShell 6.1.0.

Parameteregenskaper

Typ:IDictionary
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Headers

Anger sidhuvudena för webbbegäran. Ange en hashtabell eller ordlista.

Innehållsrelaterade rubriker, till exempel Content-Type, åsidosätts när en MultipartFormDataContent-objekt anges för Body.

Parameteregenskaper

Typ:IDictionary
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-HttpVersion

Anger den HTTP-version som används för begäran. Standardvärdet är 1.1.

Giltiga värden är:

  • 1.0
  • 1.1
  • 2.0
  • 3.0

Parameteregenskaper

Typ:Version
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-InFile

Hämtar innehållet i webbbegäran från en fil.

Ange en sökväg och ett filnamn. Om du utelämnar sökvägen är standardinställningen den aktuella platsen.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

Anger hur många gånger du ska följa relationslänkar om FollowRelLink- används. Ett mindre värde kan behövas om REST-API:et begränsas på grund av för många begäranden. Standardvärdet är [Int32]::MaxValue. Värdet 0 (noll) förhindrar följande relationslänkar.

Typ:Int32
Standardvärde:Int32.MaxValue
Stöder jokertecken:False
DontShow:False
Alias:ML
(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-MaximumRedirection

Anger hur många gånger PowerShell omdirigerar en anslutning till en alternativ URI (Uniform Resource Identifier) innan anslutningen misslyckas. Standardvärdet är 5. Värdet 0 (noll) förhindrar all omdirigering.

Parameteregenskaper

Typ:Int32
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-MaximumRetryCount

Anger hur många gånger PowerShell försöker ansluta igen när en felkod mellan 400 och 599, inklusive eller 304 tas emot. Se även parametern RetryIntervalSec för att ange antalet sekunder mellan återförsöken.

Parameteregenskaper

Typ:Int32
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Method

Anger den metod som används för webbbegäran. De godtagbara värdena för den här parametern är:

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

Parametern CustomMethod kan användas för begärandemetoder som inte anges ovan.

Parameteregenskaper

Typ:WebRequestMethod
Standardvärde:None
Godkända värden:Default, Get, Head, Post, Put, Delete, Trace, Options, Merge, Patch
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

StandardMethod
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False
StandardMethodNoProxy
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-NoProxy

Anger att cmdleten inte kommer att använda en proxy för att nå målet.

När du behöver kringgå proxyn som konfigurerats i Internet Explorer, eller en proxy som angetts i miljön, använder du den här växeln.

Den här parametern introducerades i PowerShell 6.0.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

StandardMethodNoProxy
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False
CustomMethodNoProxy
Position:Named
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-OutFile

Sparar svarstexten i den angivna utdatafilen. Ange en sökväg och ett filnamn. Om du utelämnar sökvägen är standardinställningen den aktuella platsen. Namnet behandlas som en bokstavlig sökväg. Namn som innehåller hakparenteser ([]) måste omges av enkla citattecken (').

Som standard returnerar Invoke-RestMethod resultatet till pipelinen.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-PassThru

Den här parametern är endast giltig när parametern OutFile också används i kommandot . Avsikten är att få resultatet skrivet till en fil och till pipelinen.

Anmärkning

När du använder parametern PassThru skrivs utdata till pipelinen, men filen skapas inte. Mer information finns i PowerShell-ärende #15409.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:No output
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-PreserveAuthorizationOnRedirect

Anger att cmdleten ska bevara Authorization-rubriken över omdirigeringar, när den finns.

Som standardinställning tar cmdlet-kommandot bort Authorization huvud innan den omdirigerar. Om du anger den här parametern inaktiveras logiken för fall där headern måste skickas till omdirigeringsplatsen.

Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Proxy

Använder en proxyserver för begäran i stället för att ansluta direkt till Internetresursen. Ange URI (Uniform Resource Identifier) för en nätverksproxyserver.

Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:Uri
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

StandardMethod
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False
CustomMethod
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-ProxyCredential

Anger ett användarkonto som har behörighet att använda proxyservern som anges av proxyparametern. Standardvärdet är den aktuella användaren.

Skriv ett användarnamn, till exempel Användare01 eller Domän01\Användare01, User@Domain.Comeller ange ett PSCredential objekt, till exempel ett som genereras av cmdleten Get-Credential .

Den här parametern är endast giltig när parametern Proxy också används i kommandot . Du kan inte använda parametrarna ProxyCredential och ProxyUseDefaultCredentials i samma kommando.

Parameteregenskaper

Typ:PSCredential
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

StandardMethod
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False
CustomMethod
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-ProxyUseDefaultCredentials

Anger att cmdleten använder den aktuella användarens autentiseringsuppgifter för att komma åt proxyservern som anges av parametern Proxy.

Den här parametern är endast giltig när parametern Proxy också används i kommandot . Du kan inte använda parametrarna ProxyCredential och ProxyUseDefaultCredentials i samma kommando.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

StandardMethod
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False
CustomMethod
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-ResponseHeadersVariable

Skapar en variabel som innehåller en ordlista för svarsrubriker. Ange ett variabelnamn utan symbolen dollartecken ($). Nycklarna i ordlistan innehåller fältnamnen och värdena för svarshuvudet som returneras av webbservern.

Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:RHV

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Resume

Utför ett bästa försök att återuppta nedladdningen av en partiell fil. Parametern Resume kräver parametern OutFile.

Återuppta fungerar bara på storleken på den lokala filen och fjärrfilen och utför ingen annan verifiering av att den lokala filen och fjärrfilen är desamma.

Om den lokala filstorleken är mindre än fjärrfilens storlek försöker cmdleten återuppta nedladdningen av filen och lägga till de återstående byten i slutet av filen.

Om den lokala filstorleken är samma som fjärrfilens storlek vidtas ingen åtgärd och cmdleten förutsätter att nedladdningen redan har slutförts.

Om den lokala filstorleken är större än fjärrfilens storlek kommer den lokala filen att skrivas över och hela fjärrfilen kommer att laddas ned helt igen. Det här beteendet är detsamma som att använda OutFile utan återuppta.

Om fjärrservern inte har stöd för att återuppta nedladdningen kommer den lokala filen att skrivas över och hela fjärrfilen kommer att laddas ned helt och hållet. Det här beteendet är detsamma som att använda OutFile utan återuppta.

Om den lokala filen inte finns skapas den lokala filen och hela fjärrfilen laddas ned helt. Det här beteendet är detsamma som att använda OutFile utan återuppta.

Den här funktionen lades till i PowerShell 6.1.0.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-RetryIntervalSec

Anger intervallet mellan återförsök för anslutningen när en felkod mellan 400 och 599, inklusive eller 304 tas emot. Värdet måste vara mellan 1 och [int]::MaxValue.

Se även parametern MaximumRetryCount för att ange antalet återförsök.

Parameteregenskaper

Typ:Int32
Standardvärde:5
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-SessionVariable

Skapar en variabel som innehåller webbbegärandesessionen. Ange ett variabelnamn utan symbolen dollartecken ($).

När du anger en sessionsvariabel skapar Invoke-RestMethod ett sessionsobjekt för webbbegäran och tilldelar det till en variabel med det angivna namnet i PowerShell-sessionen. Du kan använda variabeln i sessionen så snart kommandot har slutförts.

Före PowerShell 7.4 är webbbegärandesessionen inte en beständig anslutning. Det är ett objekt som innehåller information om anslutningen och begäran, inklusive cookies, autentiseringsuppgifter, maximalt omdirigeringsvärde och användaragentsträngen. Du kan använda den för att dela tillstånd och data mellan webbbegäranden.

Från och med PowerShell 7.4 är webbbegärandesessionen beständig så länge egenskaperna för sessionen inte åsidosättas i en efterföljande begäran. När det sker återskapar cmdleten sessionen med de nya värdena. De beständiga sessionerna minskar kostnaderna för upprepade begäranden, vilket gör dem mycket snabbare.

Om du vill använda webbbegärandesessionen i efterföljande webbbegäranden anger du sessionsvariabeln i värdet för parametern WebSession. PowerShell använder data i sessionsobjektet för webbbegäran när den nya anslutningen upprättas. Om du vill åsidosätta ett värde i webbbegäranssessionen använder du en cmdlet-parameter, till exempel UserAgent eller Credential. Parametervärden har företräde framför värden i webbbegärandesessionen.

Du kan inte använda parametrarna SessionVariable och WebSession i samma kommando.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:SV

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-SkipCertificateCheck

Hoppar över certifikatverifieringskontroller som innehåller alla valideringar, till exempel förfallodatum, återkallande, betrodd rotutfärdare osv.

Varning

Att använda den här parametern är inte säkert och rekommenderas inte. Den här växeln är endast avsedd att användas mot kända värdar med hjälp av ett självsignerat certifikat i testsyfte. Använd på egen risk.

Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-SkipHeaderValidation

Anger att cmdleten ska lägga till rubriker i begäran utan validering.

Den här växeln ska användas för webbplatser som kräver rubrikvärden som inte överensstämmer med standarder. Genom att ange den här växeln inaktiveras valideringen och tillåter att värdet skickas utan kontroll. När du anger det läggs alla rubriker till utan validering.

Detta inaktiverar validering för värden som skickas till parametrarna ContentType, Headers och UserAgent .

Den här funktionen lades till i PowerShell 6.0.0.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-SkipHttpErrorCheck

Den här parametern gör att cmdleten ignorerar HTTP-felstatusar och fortsätter att bearbeta svar. Felsvaren skrivs till pipelinen precis som om de lyckades.

Den här parametern introducerades i PowerShell 7.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-SslProtocol

Anger de SSL/TLS-protokoll som är tillåtna för webbbegäran. Som standard tillåts alla SSL/TLS-protokoll som stöds av systemet. SslProtocol tillåter begränsning till specifika protokoll i efterlevnadssyfte.

Dessa värden definieras som en flaggbaserad uppräkning. Du kan kombinera flera värden för att ange flera flaggor med hjälp av den här parametern. Värdena kan skickas till parametern SslProtocol som en matris med värden eller som en kommaavgränsad sträng med dessa värden. Cmdleten kombinerar värdena med hjälp av en binär-OR-åtgärd. Att skicka värden som en matris är det enklaste alternativet och du kan även använda tab-completion på värdena. Du kanske inte kan ange flera värden på alla plattformar.

Anmärkning

På icke-Windows-plattformar kanske det inte går att ange Tls eller Tls12 som ett alternativ. Stöd för Tls13 är inte tillgängligt på alla operativsystem och måste verifieras för varje operativsystem.

Den här funktionen lades till i PowerShell 6.0.0 och stöd för Tls13 lades till i PowerShell 7.1.

Parameteregenskaper

Typ:WebSslProtocol
Standardvärde:None
Godkända värden:Default, Tls, Tls11, Tls12, Tls13
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-StatusCodeVariable

Skapar en variabel som innehåller ett HTTP-statuskodresultat för begäran. Ange ett variabelnamn utan symbolen dollartecken ($).

Parametern kan identifiera lyckade meddelanden eller felmeddelanden när den används med parametern SkipHttpErrorCheck.

Ange parameterns variabelnamn som en sträng, till exempel -StatusCodeVariable "scv".

Den här parametern introducerades i PowerShell 7.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-TimeoutSec

Anger hur länge begäran kan vänta innan tidsgränsen uppnås. Ange ett värde i sekunder. Standardvärdet 0 anger en tidsgräns på obestämd tid.

En DNS-fråga (Domain Name System) kan ta upp till 15 sekunder att returnera eller överskrida tidsgränsen. Om din begäran innehåller ett värdnamn som kräver matchning och du anger TimeoutSec till ett värde som är större än noll, men mindre än 15 sekunder, kan det ta 15 sekunder eller mer innan en WebException utlöses och din begäran överskrider tidsgränsen.

Parameteregenskaper

Typ:Int32
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Token

OAuth- eller Bearer-token som ska inkluderas i begäran. Token krävs för vissa alternativ för Autentisering. Det kan inte användas oberoende av varandra.

Token tar en SecureString som innehåller token. Använd följande manuellt för att ange token:

Invoke-RestMethod -Uri $uri -Authentication OAuth -Token (Read-Host -AsSecureString)

Den här parametern introducerades i PowerShell 6.0.

Parameteregenskaper

Typ:SecureString
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-TransferEncoding

Anger ett värde för http-svarshuvudet för överföringskodning. De godtagbara värdena för den här parametern är:

  • Indelad i bitar
  • Komprimera
  • Släppa ut luft
  • GZip
  • Identitet

Parameteregenskaper

Typ:String
Standardvärde:None
Godkända värden:chunked, compress, deflate, gzip, identity
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Uri

Anger URI (Uniform Resource Identifier) för den Internetresurs som webbbegäran skickas till. Den här parametern stöder HTTP-, HTTPS-, FTP- och FILE-värden.

Den här parametern krävs. Parameternamnet (Uri) är valfritt.

Parameteregenskaper

Typ:Uri
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:0
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-UseBasicParsing

Den här parametern är inaktuell. Från och med PowerShell 6.0.0 använder alla webbbegäranden endast grundläggande parsning. Den här parametern ingår endast för bakåtkompatibilitet och all användning av den påverkar inte cmdletens drift.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-UseDefaultCredentials

Anger att cmdleten använder den aktuella användarens autentiseringsuppgifter för att skicka webbbegäran. Detta kan inte användas med autentisering eller autentiseringsuppgifter och stöds kanske inte på alla plattformar.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:False
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-UserAgent

Anger en användaragentsträng för webbbegäran.

Standardanvändaragenten liknar Mozilla/5.0 (Windows NT 10.0; Microsoft Windows 10.0.15063; en-US) PowerShell/6.0.0 med små variationer för varje operativsystem och plattform.

Om du vill testa en webbplats med standardsträngen för användaragenten som används av de flesta webbläsare använder du egenskaperna för klassen PSUserAgent , till exempel Chrome, FireFox, InternetExplorer, Opera och Safari.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-WebSession

Anger en webbförfrågningssession. Ange variabelnamnet, inklusive dollartecknet ($).

Om du vill åsidosätta ett värde i webbbegäranssessionen använder du en cmdlet-parameter, till exempel UserAgent eller Credential. Parametervärden har företräde framför värden i webbbegärandesessionen. Innehållsrelaterade rubriker, till exempel Content-Type, kommer också att åsidosättas när ett MultipartFormDataContent-objekt anges för Body.

Till skillnad från en fjärrsession är webbbegärandesessionen inte en beständig anslutning. Det är ett objekt som innehåller information om anslutningen och begäran, inklusive cookies, autentiseringsuppgifter, maximalt omdirigeringsvärde och användaragentsträngen. Du kan använda den för att dela tillstånd och data mellan webbbegäranden.

Om du vill skapa en webbförfrågningssession anger du ett variabelnamn, utan dollartecken, i värdet för parametern SessionVariable för ett Invoke-RestMethod kommando. Invoke-RestMethod skapar sessionen och sparar den i variabeln. I efterföljande kommandon använder du variabeln som värdet för parametern WebSession.

Du kan inte använda parametrarna SessionVariable och WebSession i samma kommando.

Parameteregenskaper

Typ:WebRequestSession
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

CommonParameters

Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.

Indata

Object

Du kan skicka brödtexten för en webbbegäran till den här cmdleten.

Utdata

Int64

När begäran returnerar ett heltal returnerar den här cmdleten det heltalet.

String

När begäran returnerar en sträng, returnerar denna cmdlet strängen.

XmlDocument

När begäran returnerar giltig XML returnerar den här cmdleten den som en XmlDocument-.

PSObject

När begäran returnerar JSON-strängar returnerar den här cmdleten en PSObject- som representerar data.

Kommentarer

PowerShell innehåller följande alias för Invoke-RestMethod:

  • Alla plattformar:
    • irm

Vissa funktioner kanske inte är tillgängliga på alla plattformar.

På grund av ändringar i .NET Core 3.1 använder PowerShell 7.0 och senare egenskapen HttpClient.DefaultProxy för att fastställa proxykonfigurationen.

Värdet för den här egenskapen är olika regler beroende på din plattform:

  • För Windows: Läser proxykonfiguration från miljövariabler eller, om de inte har definierats, från användarens proxyinställningar.
  • För macOS: Läser proxykonfiguration från miljövariabler eller, om dessa inte är definierade, från systemets proxyinställningar.
  • För Linux: Läser proxykonfiguration från miljövariabler eller, om de inte har definierats, initierar den här egenskapen en icke-konfigurerad instans som kringgår alla adresser.

Miljövariablerna som används för DefaultProxy initiering på Windows- och Unix-baserade plattformar är:

  • HTTP_PROXY: värdnamnet eller IP-adressen för proxyservern som används på HTTP-begäranden.
  • HTTPS_PROXY: värdnamnet eller IP-adressen för proxyservern som används på HTTPS-begäranden.
  • ALL_PROXY: värdnamnet eller IP-adressen för proxyservern som används på HTTP- och HTTPS-förfrågningar om HTTP_PROXY eller HTTPS_PROXY inte är definierade.
  • NO_PROXY: en kommaavgränsad lista med värdnamn som ska undantas från proxy.